sys.syscomments (Transact-SQL)

データベース内のビュー、ルール、既定値、トリガー、CHECK 制約、DEFAULT 制約、およびストアド プロシージャごとに 1 つのエントリを保持します。text 列には、元の SQL 定義ステートメントが含まれます。

重要な注意事項重要

この SQL Server 2000 システム テーブルは、下位互換性を保つためにビューとして含まれています。代わりに、現在の SQL Server システム ビューを使用することをお勧めします。対応するシステム ビューを調べるには、「SQL Server 2005 システム ビューへの SQL Server 2000 システム テーブルのマッピング」を参照してください。この機能は、将来のバージョンの Microsoft SQL Server では削除される予定です。新しい開発作業では、この機能の使用を避け、現在この機能を使用しているアプリケーションは修正するようにしてください。

列名

データ型

説明

id

int

このテキストが適用されるオブジェクトの ID です。

number

smallint

プロシージャがグループ化されている場合は、グループ内の番号です。

0 = エントリがプロシージャでないことを表します。

colid

smallint

オブジェクトの定義が 4,000 文字を超える場合の行のシーケンス番号です。

status

smallint

単に情報を示すためだけに特定されます。サポートされていません。将来の互換性は保証されません。

ctext

varbinary(8000)

SQL 定義ステートメントの生のバイトです。

texttype

smallint

0 = ユーザーが指定するパラメーター

1 = システムが指定するパラメーター

4 = 暗号化コメント

language

smallint

単に情報を示すためだけに特定されます。サポートされていません。将来の互換性は保証されません。

encrypted

bit

プロシージャ定義が暗号化されているかどうかを示します。

0 = 暗号化されていない

1 = 暗号化されている

重要な注意事項重要
ストアド プロシージャ定義を暗号化するには、ENCRYPTION キーワードを指定して CREATE PROCEDURE を使用します。

compressed

bit

常に 0 が返されます。これは、プロシージャが圧縮されていることを示します。

text

nvarchar(4000)

SQL 定義ステートメントの実際のテキストです。

SQL Server 2008 では、SQL 式をデコードしてカタログ メタデータに格納する方法が SQL Server 2000 と異なります。デコードされた式のセマンティクスは元のテキストと同じですが、構文も同じであるとは限りません。たとえば、デコードされた式からは空白文字が削除されます。

この SQL Server 2000 互換のビューは現在の SQL Server 構造から情報を取得するため、nvarchar(4000) の定義より多くの文字数が返される可能性があります。sp_help は、テキスト列のデータ型として nvarchar(4000) を返します。syscomments を使用する場合は nvarchar(max) を使用することを検討してください。新しい開発作業では syscomments を使用しないでください。