目的
データベース オブジェクトまたは定義に以前挿入されたコメントを取得します。
このSQL文のコメント書き込み形式の詳細については、<Teradata Vantage™ SQLデータ定義言語 - 詳細トピック、B035-1184>の「COMMENT(コメント書き込み形式)」を参照してください。
必要な権限
なし。
自動的に与えられる権限
なし。
構文
構文要素
- object_kind_1
- 必須のデータベース オブジェクトの種類の指定。
- object_kind_2
- データベース オブジェクトの種類の指定(オプション)。
- database_name
- user_name
- object_nameが含まれるデータベースまたはユーザーを指定します(現在のデータベースまたはユーザーに含まれていない場合)。
- object_name
- 以下を含む、コメントを取得するオブジェクトの名前。
- マクロ、ストアド プロシージャ、またはユーザー定義関数のパラメータ。
- ユーザーの基本テーブル、エラー テーブル、ハッシュ インデックス、結合インデックス、またはビューの列。
- データベースまたはユーザーが含んでいる特定の関数、マクロ、プロファイル、ロール、ストアド プロシージャ、基本テーブル、エラー テーブル、ハッシュ インデックス、結合インデックス、トリガー、またはビュー名。
- データベースまたはユーザー。
- UDT。database_name.udt_name.attribute_nameを指定して、STRUCTURED型UDTの特定の属性に対して記述されたコメントを取得できます。
- メソッド。固有のメソッド名を使用する必要があります。
- GLOPセット。
ANSI準拠
COMMENTは、ANSI SQL:2011規格に対するTeradata拡張機能です。
COMMENT (コメント取得形式)を使用するためのルール
COMMENT文のコメント取得形式を使用する場合、以下のルールが適用されます。
- COMMENT (コメント取得形式)は、トランザクション処理のDML文として処理されるので、2PCセッション モードで使用できます。2フェーズ コミット プロトコルの簡単な説明については、<Teradata Vantage™ - データベースの導入、B035-1091>を参照してください。
Teradataセッション モードでは、明示的トランザクションの境界内であればどこでもCOMMENT (コメント取得形式)リクエストを指定できます。
- コメントを取得する場合は、オブジェクト名の指定の後にコメント文字列を指定ない。
状況 システムの実行内容 コメント文字列を指定する 以下のいずれかを実行します。 - 指定されたオブジェクトに既存のコメントが無い場合、Teradata Databaseはデータ ディクショナリ内のオブジェクトに指定されたコメント文字列を配置します。
- 指定されたオブジェクトに既存のコメントが無い場合、Teradata Databaseはデータ ディクショナリ内の既存のコメントを、新規に指定された文字列に置き換えます。
コメント文字列を指定しない 以下のいずれかを実行します。 - 指定されたオブジェクトに既存のコメントが無い場合、Teradata DatabaseはNULLを返します。
- 指定されたオブジェクトに既存のコメントがある場合、Teradata Databaseはデータ ディクショナリ内に保管されているとおりにそのコメントのテキストを返します。
- 指定したオブジェクトの種類がGROUPの場合は、これらが含まれるデータベースまたはユーザー名を指定できません。
例: コメントの取得
nameテーブルのemployee列を説明するために次のコメントを挿入したとします。
COMMENT ON COLUMN employee.name IS 'Employee name, last name followed by first initial';
次のリクエストによってこのコメントを取得します。
COMMENT ON COLUMN employee.name;
このリクエストは、前のリクエストで作成されたとおりにコメント文字列を返します。
Employee name, last name followed by first initial
このリクエストのオブジェクトの種類はCOLUMNなので、記述する場合にはキーワードCOLUMNを指定する必要があります。
例: コメントの書き込み
ord_hidxテーブルに定義されるordersという名前のハッシュ インデックスを定義したとします。このテーブルは、アカウンティングデータベースに格納されています。
このリクエストのオブジェクトの種類は、ハッシュ インデックスを表わすTABLEなので、リクエストの中でTABLEを指定する必要はありません。
次のコメント挿入用のCOMMENTリクエストを入力して、ハッシュ インデックスord_hidxにコメントを定義できます。
COMMENT accounting.ord_hidx AS 'hash index on Orders';
次のコメント取得用のCOMMENTリクエストを実行した場合、次のテキストが返されます。
COMMENT accounting.ord_hidx; hash index on orders