RollingPig
自我介绍
切换风格
订阅我的Blog
博客日历
文章归档...
最新发表...
博客统计...
网站链接...
资源
===========================================================
在DB的某个角落里发现SQL 的处理流程,很意外
===========================================================

在Oracle 9iR2里可以用如下SQL 获取,其他版本不详

select text from dba_source
where OWNER ='SYS'
and name = 'DBMS_SQL'
and TYPE = 'PACKAGE'
and line between 37 and 94
order by line
/




-- The flow of procedure calls will typically look like this:

--

-- -----------

-- |
open_cursor |

-- -----------

-- |

-- |

--
v

-- -----

-- ------------>|
parse |

-- | -----

-- | |

-- | |---------

-- |
v |

-- | -------------- |

-- |-------->|
bind_variable | |

-- | ^ ------------- |

-- | | | |

-- | -----------| |

-- | |<--------

-- |
v

-- | query?---------- yes ---------

-- | | |

-- |
no |

-- | | |

-- |
v v

-- | ------- -------------

-- |----------->|
execute | ->| define_column |

-- | ------- | -------------

-- | |------------ | |

-- | | | ----------|

-- |
v | v

-- | -------------- | -------

-- | ->|
variable_value | | ------>| execute |

-- | | -------------- | | -------

-- | | | | | |

-- | ----------| | | |

-- | | | |
v

-- | | | | ----------

-- | |<----------- |----->|
fetch_rows |

-- | | | ----------

-- | | | |

-- | | |
v

-- | | | --------------------

-- | | | |
column_value |

-- | | | |
variable_value |

-- | | | ---------------------

-- | | | |

-- | |<--------------------------

-- | |

-- -----------------|

-- |

--
v

-- ------------

-- |
close_cursor |

-- ------------

--

---------------



-------------

rollingpig 发表于:2006.07.26 15:01 ::分类: ( My Oracle Article ) ::阅读:(372次) :: 评论 (2) :: 引用 (0)
re: 在DB的某个角落里发现SQL 的处理流程,很意外 [回复]

是动态sql的吧,前两天偶然看包的时候也发现了...
这样画流程图,让我想起了以前汇编里面的注释...

Nazgul 评论于:2006.07.27 16:21
re: 在DB的某个角落里发现SQL 的处理流程,很意外 [回复]

数据字典无处不在

foreverlee 评论于:2006.09.27 13:55

发表评论
标题

在此添加评论

称呼

邮箱地址(可选)

个人主页(可选)