當(dāng)前數(shù)據(jù)庫中的當(dāng)前用戶可以訪問的每個(gè)存儲(chǔ)過程及函數(shù)在該視圖中占一行。描述返回值的那些列只適用于函數(shù)。對(duì)于存儲(chǔ)過程,這些列將為 NULL。
INFORMATION_SCHEMA.ROUTINES 視圖以 sysobjects 和 syscolumns 系統(tǒng)表為基礎(chǔ)。
若要從這些視圖中檢索信息,請(qǐng)指定完全合格的 INFORMATION_SCHEMA view_name 名稱。
說明 ROUTINE_DEFINITION 列包含創(chuàng)建函數(shù)、存儲(chǔ)過程或觸發(fā)器的源語句。這些源語句有可能包含嵌入式回車符。如果將該列返回給某個(gè)以文本格式顯示結(jié)果的應(yīng)用程序,那么 ROUTINE_DEFINITION 結(jié)果中的嵌入式回車符可能會(huì)影響全部結(jié)果集的格式。如果選擇 ROUTINE_DEFINITION 列,那么必須對(duì)嵌入式回車符進(jìn)行調(diào)整,例如,通過將結(jié)果集返回到一個(gè)網(wǎng)格或者將 ROUTINE_DEFINITION 返回到其自己的文本框。
列名 | 數(shù)據(jù)類型 | 描述 |
---|---|---|
SPECIFIC_CATALOG | nvarchar(128) | 特定的目錄名稱。 對(duì)于 SQL Server 2000,該名稱與 ROUTINE_CATALOG 相同。 |
SPECIFIC_SCHEMA | nvarchar(128) | 特定的目錄名稱。 對(duì)于 SQL Server 2000,該名稱與 ROUTINE_SCHEMA 相同。 |
SPECIFIC_NAME | nvarchar(128) | 特定的目錄名稱。 對(duì)于 SQL Server 2000,該名稱與 ROUTINE_NAME 相同。 |
ROUTINE_CATALOG | nvarchar(128) | 函數(shù)的目錄名。 |
ROUTINE_SCHEMA | nvarchar(128) | 函數(shù)的所有者名稱。 |
ROUTINE_NAME | nvarchar(128) | 函數(shù)的名稱。 |
ROUTINE_TYPE | nvarchar(20) | 為存儲(chǔ)過程返回 PROCEDURE;為函數(shù)返回 FUNCTION。 |
MODULE_CATALOG | nvarchar(128) | NULL。留作以后使用。 |
MODULE_SCHEMA | nvarchar(128) | NULL。留作以后使用。 |
MODULE_NAME | nvarchar(128) | NULL。留作以后使用。 |
UDT_CATALOG | nvarchar(128) | NULL。留作以后使用。 |
UDT_SCHEMA | nvarchar(128) | NULL。留作以后使用。 |
UDT_NAME | nvarchar(128) | NULL。留作以后使用。 |
DATA_TYPE | nvarchar(128) | 函數(shù)返回值的數(shù)據(jù)類型。如果是表值函數(shù),那么返回 table。 |
CHARACTER_MAXIMUM_LENGTH | int | 以字符為單位的最大長(zhǎng)度(如果返回類型是字符類型)。 |
CHARACTER_OCTET_LENGTH | int | 以字節(jié)為單位的最大長(zhǎng)度(如果返回類型是字符類型)。 |
COLLATION_CATALOG | nvarchar(128) | 返回值的排序規(guī)則名的目錄部分。對(duì)于非字符類型,返回 NULL。 |
COLLATION_SCHEMA | nvarchar(128) | 返回值的排序規(guī)則名的架構(gòu)部分。對(duì)于非字符類型,返回 NULL。 |
COLLATION_NAME | nvarchar(128) | 返回值的排序規(guī)則名。對(duì)于非字符類型,返回 NULL。 |
CHARACTER_SET_CATALOG | nvarchar(128) | 返回值的字符集的目錄名。對(duì)于非字符類型,返回 NULL。 |
CHARACTER_SET_SCHEMA | nvarchar(128) | 返回值的字符集的架構(gòu)名。對(duì)于非字符類型,返回 NULL。 |
CHARACTER_SET_NAME | nvarchar(128) | 返回值的字符集的名稱。對(duì)于非字符類型,返回 NULL。 |
NUMERIC_PRECISION | smallint | 返回值的數(shù)字精度。對(duì)于非數(shù)字類型,返回 NULL。 |
NUMERIC_PRECISION_RADIX | smallint | 返回值的數(shù)字精度基數(shù)。對(duì)于非數(shù)字類型,返回 NULL。 |
NUMERIC_SCALE | smallint | 返回值的小數(shù)位數(shù)。對(duì)于非數(shù)字類型,返回 NULL。 |
DATETIME_PRECISION | smallint | 秒的小數(shù)精度(如果返回值是 datetime 類型)。否則,返回 NULL。 |
INTERVAL_TYPE | nvarchar(30) | NULL。留作以后使用。 |
INTERVAL_PRECISION | smallint | NULL。留作以后使用。 |
TYPE_UDT_CATALOG | nvarchar(128) | NULL。留作以后使用。 |
TYPE_UDT_SCHEMA | nvarchar(128) | NULL。留作以后使用。 |
TYPE_UDT_NAME | nvarchar(128) | NULL。留作以后使用。 |
SCOPE_CATALOG | nvarchar(128) | NULL。留作以后使用。 |
SCOPE_SCHEMA | nvarchar(128) | NULL。留作以后使用。 |
SCOPE_NAME | nvarchar(128) | NULL。留作以后使用。 |
MAXIMUM_CARDINALITY | bigint | NULL。留作以后使用。 |
DTD_IDENTIFIER | nvarchar(128) | NULL。留作以后使用。 |
ROUTINE_BODY | nvarchar(30) | 對(duì)于 T-SQL 函數(shù),返回 SQL;對(duì)于外部編寫的函數(shù),返回 EXTERNAL。 在 SQL Server 2000 中,函數(shù)總是 SQL。 |
ROUTINE_DEFINITION | nvarchar(4000) | 函數(shù)或存儲(chǔ)過程的定義文本(如果沒有對(duì)函數(shù)或存儲(chǔ)過程加密)。否則,返回 NULL。 |
EXTERNAL_NAME | nvarchar(128) | NULL。留作以后使用。 |
EXTERNAL_LANGUAGE | nvarchar(30) | NULL。留作以后使用。 |
PARAMETER_STYLE | nvarchar(30) | NULL。留作以后使用。 |
IS_DETERMINISTIC | nvarchar(10) | 如果例程是確定性的,那么返回 YES。 如果例程是不確定性的,那么返回 NO。 對(duì)于存儲(chǔ)過程,總是返回 NO。 |
SQL_DATA_ACCESS | nvarchar(30) | 返回下面四個(gè)值中的一個(gè): NONE = 函數(shù)不包含 SQL。 在 SQL Server 2000 中,為所有函數(shù)返回 READS,為所有存儲(chǔ)過程返回 MODIFIES。 |
IS_NULL_CALL | nvarchar(10) | 指明如果例程的任何參數(shù)為 NULL,是否調(diào)用該例程。 在 SQL Server 2000 中,總是返回 YES。 |
SQL_PATH | nvarchar(128) | NULL。留作以后使用。 |
SCHEMA_LEVEL_ROUTINE | nvarchar(10) | 如果是架構(gòu)級(jí)函數(shù),那么返回 YES;如果不是架構(gòu)級(jí)函數(shù),則返回 NO。 在 SQL Server 2000 中,總是返回 YES。 |
MAX_DYNAMIC_RESULT_SETS | smallint | 例程返回的動(dòng)態(tài)結(jié)果集的最大數(shù)。 如果是函數(shù),則返回 0;如果是存儲(chǔ)過程,則返回 TBD。 |
IS_USER_DEFINED_CAST | nvarchar(10) | 如果是用戶定義投影函數(shù),則返回 YES;如果不是用戶定義投影函數(shù),則返回 NO。 在 SQL Server 2000 中,總是返回 NO。 |
IS_IMPLICITLY_INVOCABLE | nvarchar(10) | 如果例程可隱式地調(diào)用,那么返回 YES;如果函數(shù)不可隱式地調(diào)用,那么返回 NO。 在 SQL Server 2000 中,總是返回 NO。 |
CREATED | datetime | 創(chuàng)建例程的時(shí)間。 |
LAST_ALTERED | datetime | 最后一次修改函數(shù)的時(shí)間。 |