ROUTINES (Transact-SQL)ROUTINES (Transact-SQL)

適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database はいAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance はいAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics はいParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database はいAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance はいAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics はいParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse

現在のデータベースの現在のユーザーがアクセスできるストアド プロシージャと関数ごとに、1 行のデータを返します。Returns one row for each stored procedure and function that can be accessed by the current user in the current database. 戻り値を記述する列は、関数にのみ適用されます。The columns that describe the return value apply only to functions. ストアドプロシージャの場合、これらの列は NULL になります。For stored procedures, these columns will be NULL.

これらのビューから情報を取得するには、INFORMATION_SCHEMA の完全修飾名を指定します。view_nameTo retrieve information from these views, specify the fully qualified name of INFORMATION_SCHEMA.view_name.

注意

ROUTINE_DEFINITION 列には、関数またはストアドプロシージャを作成したソースステートメントが含まれています。The ROUTINE_DEFINITION column contains the source statements that created the function or stored procedure. これらのソースステートメントには、埋め込みのキャリッジリターンが含まれている可能性があります。These source statements are likely to contain embedded carriage returns. 結果をテキスト形式で表示するアプリケーションにこの列を返す場合、ROUTINE_DEFINITION の結果に埋め込まれた復帰は、全体的な結果セットの書式設定に影響を与える可能性があります。If you are returning this column to an application that displays the results in a text format, the embedded carriage returns in the ROUTINE_DEFINITION results may affect the formatting of the overall result set. ROUTINE_DEFINITION 列を選択する場合は、結果セットをグリッドで返すか、ROUTINE_DEFINITION を専用のテキスト ボックスに返すなどして、埋め込み型のキャリッジ リターンを調整する必要があります。If you select the ROUTINE_DEFINITION column, you must adjust for the embedded carriage returns; for example, by returning the result set into a grid or returning ROUTINE_DEFINITION into its own text box.

列名Column name データ型Data type 説明Description
SPECIFIC_CATALOGSPECIFIC_CATALOG nvarchar ( 128 )nvarchar( 128 ) カタログ固有の名前。Specific name of the catalog. この名前は ROUTINE_CATALOG と同じです。This name is the same as ROUTINE_CATALOG.
SPECIFIC_SCHEMASPECIFIC_SCHEMA nvarchar ( 128 )nvarchar( 128 ) スキーマ固有の名前。Specific name of the schema.

重要オブジェクトのスキーマを決定するために INFORMATION_SCHEMA ビューを使用しないでください。 ** * * * * **** Important ** Do not use INFORMATION_SCHEMA views to determine the schema of an object. INFORMATION_SCHEMA ビューは、オブジェクトのメタデータのサブセットのみを表します。INFORMATION_SCHEMA views only represent a subset of the metadata of an object. オブジェクトのスキーマを調べる唯一の信頼性のある方法は、sys.objects カタログ ビューに対するクエリを実行する方法です。The only reliable way to find the schema of a object is to query the sys.objects catalog view.
SPECIFIC_NAMESPECIFIC_NAME nvarchar ( 128 )nvarchar( 128 ) カタログ固有の名前。Specific name of the catalog. この名前は ROUTINE_NAME と同じです。This name is the same as ROUTINE_NAME.
ROUTINE_CATALOGROUTINE_CATALOG nvarchar ( 128 )nvarchar( 128 ) 関数のカタログの名前。Catalog name of the function.
ROUTINE_SCHEMAROUTINE_SCHEMA nvarchar ( 128 )nvarchar( 128 ) 関数を含むスキーマの名前。Name of the schema that contains this function.

重要オブジェクトのスキーマを決定するために INFORMATION_SCHEMA ビューを使用しないでください。 ** * * * * **** Important ** Do not use INFORMATION_SCHEMA views to determine the schema of an object. INFORMATION_SCHEMA ビューは、オブジェクトのメタデータのサブセットのみを表します。INFORMATION_SCHEMA views only represent a subset of the metadata of an object. オブジェクトのスキーマを調べる唯一の信頼性のある方法は、sys.objects カタログ ビューに対するクエリを実行する方法です。The only reliable way to find the schema of a object is to query the sys.objects catalog view.
ROUTINE_NAMEROUTINE_NAME nvarchar ( 128 )nvarchar( 128 ) 関数の名前です。Name of the function.
ROUTINE_TYPEROUTINE_TYPE nvarchar ( 20 )nvarchar( 20 ) ストアドプロシージャのプロシージャと関数の関数を返します。Returns PROCEDURE for stored procedures, and FUNCTION for functions.
MODULE_CATALOGMODULE_CATALOG nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
MODULE_SCHEMAMODULE_SCHEMA nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
MODULE_NAMEMODULE_NAME nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
UDT_CATALOGUDT_CATALOG nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
UDT_SCHEMAUDT_SCHEMA nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
UDT_NAMEUDT_NAME nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
DATA_TYPEDATA_TYPE nvarchar ( 128 )nvarchar( 128 ) 関数の戻り値のデータ型。Data type of the return value of the function. テーブル値関数の場合、テーブルを返します。Returns table if a table-valued function.
CHARACTER_MAXIMUM_LENGTHCHARACTER_MAXIMUM_LENGTH intint 戻り値のデータ型が文字型の場合の最大文字数。Maximum length in characters, if the return type is a character type.

xmlと大きな値の型のデータの場合は-1。-1 for xml and large-value type data.
CHARACTER_OCTET_LENGTHCHARACTER_OCTET_LENGTH intint 戻り値の型が文字型の場合は、バイト単位の最大長。Maximum length in bytes, if the return type is a character type.

xmlと大きな値の型のデータの場合は-1。-1 for xml and large-value type data.
COLLATION_CATALOGCOLLATION_CATALOG nvarchar ( 128 )nvarchar( 128 ) 常に NULL が返されます。Always returns NULL.
COLLATION_SCHEMACOLLATION_SCHEMA nvarchar ( 128 )nvarchar( 128 ) 常に NULL が返されます。Always returns NULL.
COLLATION_NAMECOLLATION_NAME nvarchar ( 128 )nvarchar( 128 ) 戻り値の照合順序名。Collation name of the return value. 非文字型の場合、は NULL を返します。For noncharacter types, returns NULL.
CHARACTER_SET_CATALOGCHARACTER_SET_CATALOG nvarchar ( 128 )nvarchar( 128 ) 常に NULL が返されます。Always returns NULL.
CHARACTER_SET_SCHEMACHARACTER_SET_SCHEMA nvarchar ( 128 )nvarchar( 128 ) 常に NULL が返されます。Always returns NULL.
CHARACTER_SET_NAMECHARACTER_SET_NAME nvarchar ( 128 )nvarchar( 128 ) 戻り値の文字セットの名前。Name of the character set of the return value. 非文字型の場合、は NULL を返します。For noncharacter types, returns NULL.
NUMERIC_PRECISIONNUMERIC_PRECISION smallintsmallint 戻り値の数値の有効桁数。Numeric precision of the return value. 数値以外の型の場合、は NULL を返します。For the nonnumeric types, returns NULL.
NUMERIC_PRECISION_RADIXNUMERIC_PRECISION_RADIX smallintsmallint 戻り値の数値の有効桁数の基数。Numeric precision radix of the return value. 数値型でない場合、は NULL を返します。For nonnumeric types, returns NULL.
NUMERIC_SCALENUMERIC_SCALE smallintsmallint 戻り値の小数点以下桁数。Scale of the return value. 数値型でない場合、は NULL を返します。For nonnumeric types, returns NULL.
DATETIME_PRECISIONDATETIME_PRECISION smallintsmallint 戻り値がdatetime型の場合の秒の小数部の有効桁数。Fractional precision of a second if the return value is of type datetime. その他の場合は NULL が返されます。Otherwise, returns NULL.
INTERVAL_TYPEINTERVAL_TYPE nvarchar ( 30 )nvarchar( 30 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
INTERVAL_PRECISIONINTERVAL_PRECISION smallintsmallint NULL。NULL. 将来利用するために予約されています。Reserved for future use.
TYPE_UDT_CATALOGTYPE_UDT_CATALOG nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
TYPE_UDT_SCHEMATYPE_UDT_SCHEMA nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
TYPE_UDT_NAMETYPE_UDT_NAME nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
SCOPE_CATALOGSCOPE_CATALOG nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
SCOPE_SCHEMASCOPE_SCHEMA nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
SCOPE_NAMESCOPE_NAME nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
MAXIMUM_CARDINALITYMAXIMUM_CARDINALITY bigintbigint NULL。NULL. 将来利用するために予約されています。Reserved for future use.
DTD_IDENTIFIERDTD_IDENTIFIER nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
ROUTINE_BODYROUTINE_BODY nvarchar ( 30 )nvarchar( 30 ) 外部で記述された関数の場合は、関数の場合は SQL を返し Transact-SQLTransact-SQL ます。Returns SQL for a Transact-SQLTransact-SQL function and EXTERNAL for an externally written function.

関数は常に SQL です。Functions will always be SQL.
ROUTINE_DEFINITIONROUTINE_DEFINITION nvarchar ( 4000 )nvarchar( 4000 ) 関数またはストアドプロシージャが暗号化されていない場合、関数またはストアドプロシージャの定義テキストの最初の4000文字を返します。Returns the first 4000 characters of the definition text of the function or stored procedure if the function or stored procedure is not encrypted. その他の場合は NULL が返されます。Otherwise, returns NULL.

完全な定義を確実に取得するには、 OBJECT_DEFINITION関数またはsql_modulesカタログビューの定義列に対してクエリを実行します。To ensure that you obtain the complete definition, query the OBJECT_DEFINITION function or the definition column in the sys.sql_modules catalog view.
EXTERNAL_NAMEEXTERNAL_NAME nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
EXTERNAL_LANGUAGEEXTERNAL_LANGUAGE nvarchar ( 30 )nvarchar( 30 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
PARAMETER_STYLEPARAMETER_STYLE nvarchar ( 30 )nvarchar( 30 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
IS_DETERMINISTICIS_DETERMINISTIC nvarchar ( 10 )nvarchar( 10 ) ルーチンが決定的な場合は YES を返します。Returns YES if the routine is deterministic.

ルーチンが非決定的である場合、は NO を返します。Returns NO if the routine is nondeterministic.

ストアド プロシージャの場合は常に NO が返されます。Always returns NO for stored procedures.
SQL_DATA_ACCESSSQL_DATA_ACCESS nvarchar ( 30 )nvarchar( 30 ) 次の値のいずれか。Returns one of the following values:

NONE = 関数に SQL が含まれません。NONE = Function does not contain SQL.

CONTAINS = 関数に SQL が含まれる可能性があります。CONTAINS = Function possibly contains SQL.

READS = 関数で SQL データが読み取られる可能性があります。READS = Function possibly reads SQL data.

変更 = 関数は SQL データを変更する可能性があります。MODIFIES = Function possibly modifies SQL data.

すべての関数に READS、すべてのストアド プロシージャに MODIFIES が返されます。Returns READS for all functions, and MODIFIES for all stored procedures.
IS_NULL_CALLIS_NULL_CALL nvarchar ( 10 )nvarchar( 10 ) いずれかの引数が NULL の場合、ルーチンを呼び出すことができるかどうかを示します。Indicates whether the routine will be called if any one of its arguments is NULL.
SQL_PATHSQL_PATH nvarchar ( 128 )nvarchar( 128 ) NULL。NULL. 将来利用するために予約されています。Reserved for future use.
SCHEMA_LEVEL_ROUTINESCHEMA_LEVEL_ROUTINE nvarchar ( 10 )nvarchar( 10 ) スキーマレベルの関数の場合は YES、スキーマレベルの関数でない場合は NO を返します。Returns YES if schema-level function, or NO if not a schema-level function.

常に YES を返します。Always returns YES.
MAX_DYNAMIC_RESULT_SETSMAX_DYNAMIC_RESULT_SETS smallintsmallint ルーチンによって返される動的結果セットの最大数。Maximum number of dynamic result sets returned by routine.

関数の場合は 0 が返されます。Returns 0 if functions.
IS_USER_DEFINED_CASTIS_USER_DEFINED_CAST nvarchar ( 10 )nvarchar( 10 ) ユーザー定義のキャスト関数の場合は YES、ユーザー定義の cast 関数でない場合は NO を返します。Returns YES if user-defined cast function, and NO if not a user-defined cast function.

常に NO が返されます。Always returns NO.
IS_IMPLICITLY_INVOCABLEIS_IMPLICITLY_INVOCABLE nvarchar ( 10 )nvarchar( 10 ) ルーチンを暗黙的に呼び出すことができる場合は YES、関数を暗黙的に呼び出すことができない場合は NO を返します。Returns YES if the routine can be implicitly invoked, and NO if function cannot be implicitly invoked.

常に NO が返されます。Always returns NO.
CREATEDCREATED datetimedatetime ルーチンが作成された時刻。Time when the routine was created.
LAST_ALTEREDLAST_ALTERED datetimedatetime 関数が最後に変更された時刻。The last time the function was modified.

参照See Also

システムビュー (Transact-sql) System Views (Transact-SQL)
情報スキーマビュー (Transact-sql) Information Schema Views (Transact-SQL)
(Transact-sql)の列 sys.columns (Transact-SQL)
sys (Transact-sql) sys.objects (Transact-SQL)
Transact-sql)(プロシージャ sys.procedures (Transact-SQL)
sys.sql_modules (Transact-SQL)sys.sql_modules (Transact-SQL)