2012-03-30 66 views
3

有沒有辦法獲取Oracle內置的aggeregate和其他函數(如AVG, STDDEV, SQRT,等)的元數據? 我需要知道對象ID和參數元。Oracle內置函數元數據

SYS.ALL_OBJECTS視圖中我找不到任何有用的東西。我也嘗試在object_name中搜索SYS.ALL_ARGUMENTS視圖。

是否有數據類似於SYS.ALL_OBJECTSSYS.ALL_ARGUMENTS的內置功能的視圖或表格?

回答

5

您已標記Oracle 10g,but from what I can find,您需要Oracle 11g r1來查找內置SQL函數的元數據。

你可以看到的元數據的SQL內置函數與動態性能視圖V$SQLFN_METADATA(其中有普通的元數據)和V$SQLFN_ARG_METADATA(其中有大約參數元數據)。

您可以在FUNCID列上加入這些視圖。對於具有無限參數的函數(例如LEAST和GREATEST),V $ SQLFN_ARG_METADATA對於每個重複參數只有一行。

+0

謝謝。這正是我所期待的。 – SergeyT 2012-04-02 06:47:03

3

直接SQL(非聚合)內置函數可以在SQL * Plus的Oracle10g中通過發佈describe SYS.STANDARD來描述。

SQL> desc sys.standard; 
FUNCTION SYS$DSINTERVALSUBTRACT RETURNS INTERVAL DAY TO SECOND 
Argument Name     Type     In/Out Default? 
------------------------------ ----------------------- ------ -------- 
LEFT       TIMESTAMP    IN 
RIGHT       TIMESTAMP    IN 
FUNCTION SYS$DSINTERVALSUBTRACT RETURNS INTERVAL DAY TO SECOND 
Argument Name     Type     In/Out Default? 
------------------------------ ----------------------- ------ -------- 
LEFT       TIMESTAMP WITH TIME ZONE IN 
RIGHT       TIMESTAMP WITH TIME ZONE IN 

...喀嚓爲簡潔

FUNCTION VSIZE RETURNS NUMBER 
Argument Name     Type     In/Out Default? 
------------------------------ ----------------------- ------ -------- 
E        DATE     IN 
FUNCTION VSIZE RETURNS NUMBER 
Argument Name     Type     In/Out Default? 
------------------------------ ----------------------- ------ -------- 
E        VARCHAR2    IN 
FUNCTION XOR RETURNS BOOLEAN 
Argument Name     Type     In/Out Default? 
------------------------------ ----------------------- ------ -------- 
LEFT       BOOLEAN     IN 
RIGHT       BOOLEAN     IN