COMMENT¶
既存のオブジェクトのコメントを追加するか、既存のコメントを上書きします。
コメントはすべてのオブジェクト(ユーザー、ロール、ウェアハウス、データベース、テーブルなど)に追加できます。このコマンドを使用して、個々のテーブル列にコメントを追加することもできますが、列に対する制約には追加できません。
構文¶
COMMENT [ IF EXISTS ] ON <object_type> <object_name> IS '<string_literal>';
COMMENT [ IF EXISTS ] ON COLUMN <table_name>.<column_name> IS '<string_literal>';
パラメーター¶
ON object_type object_name指定されたタイプ(例えば、
TABLE、SCHEMA、VIEWなど)のオブジェクトに、指定された識別子でコメントを追加します。識別子にスペースまたは特殊文字が含まれる場合は、文字列全体を二重引用符で囲む必要があります。二重引用符で囲まれた識別子も大文字と小文字が区別されます。
詳細については、 識別子の要件 をご参照ください。
ON COLUMN table_name.column_name指定したテーブル列にコメントを追加します。
識別子にスペースまたは特殊文字が含まれる場合は、文字列全体を二重引用符で囲む必要があります。二重引用符で囲まれた識別子も大文字と小文字が区別されます。
詳細については、 識別子の要件 をご参照ください。
IS string_literal追加するコメントを指定します。
デフォルト:
NULL
使用上の注意¶
オブジェクトを作成または変更する際に、コメントを追加または変更することもできます。
コメントを追加するには、 CREATE <オブジェクト> または ALTER <オブジェクト> コマンドで
COMMENTパラメーターを指定します。既存のコメントを修正するには、 ALTER <オブジェクト> コマンドで
COMMENTパラメーターを指定します。
テーブルの列に対するコメントの追加や変更する場合、少し異なる構文が使用されます。
作成時にコメントを追加するには、列宣言の後に
COMMENTキーワード(プロパティではありません)を続けます。コメントを変更するには、このコマンドを使用します。
制約にコメントを追加するには、 CREATE TABLE または CREATE | ALTER TABLE ... CONSTRAINT コマンドを使用します。
DESCRIBE TABLE の出力は、複数列主キーなどのテーブル制約に対するコメントを表示しません。これらのコメントを見るには、 TABLE_CONSTRAINTS ビュー をクエリします。
メタデータについて。
注意
Snowflakeサービスを使用する場合、お客様は、個人データ(ユーザーオブジェクト向け以外)、機密データ、輸出管理データ、またはその他の規制されたデータがメタデータとして入力されていないことを確認する必要があります。詳細については、 Snowflakeのメタデータフィールド をご参照ください。
例¶
コメント付きのスキーマを作成してから、コメントを上書きします。
CREATE SCHEMA my_schema COMMENT='this is comment1';
SHOW SCHEMAS LIKE 'my_schema';
+-------------------------------+-----------+------------+------------+---------------+---------+------------------+---------+----------------+------+
| created_on                    | name      | is_default | is_current | database_name | owner   | comment          | options | retention_time | ...  |
|-------------------------------+-----------+------------+------------+---------------+---------+------------------+---------+----------------+------|
| 2025-02-26 12:08:52.363 -0800 | MY_SCHEMA | N          | Y          | MY_DB         | MY_ROLE | this is comment1 |         | 1              |  ... |
+-------------------------------+-----------+------------+------------+---------------+---------+------------------+---------+----------------+------+
COMMENT ON SCHEMA my_schema IS 'now comment2';
SHOW SCHEMAS LIKE 'my_schema';
+-------------------------------+-----------+------------+------------+---------------+---------+--------------+---------+----------------+-----+
| created_on                    | name      | is_default | is_current | database_name | owner   | comment      | options | retention_time | ... |
|-------------------------------+-----------+------------+------------+---------------+---------+--------------+---------+----------------+-----+
| 2025-02-26 12:08:52.363 -0800 | MY_SCHEMA | N          | Y          | MY_DB         | MY_ROLE | now comment2 |         | 1              | ... |
+-------------------------------+-----------+------------+------------+---------------+---------+--------------+---------+----------------+-----+
テーブルの列にコメントを付けてテーブルを作成し、コメントを上書きします。
CREATE OR REPLACE TABLE test_comment_table_column(my_column STRING COMMENT 'this is comment3');
DESC TABLE test_comment_table_column;
+-----------+-------------------+--------+-------+---------+-------------+------------+-------+------------+------------------+-------------+----------------+
| name      | type              | kind   | null? | default | primary key | unique key | check | expression | comment          | policy name | privacy domain |
|-----------+-------------------+--------+-------+---------+-------------+------------+-------+------------+------------------+-------------+----------------|
| MY_COLUMN | VARCHAR(16777216) | COLUMN | Y     | NULL    | N           | N          | NULL  | NULL       | this is comment3 | NULL        | NULL           |
+-----------+-------------------+--------+-------+---------+-------------+------------+-------+------------+------------------+-------------+----------------+
COMMENT ON COLUMN test_comment_table_column.my_column IS 'now comment4';
DESC TABLE test_comment_table_column;
+-----------+-------------------+--------+-------+---------+-------------+------------+-------+------------+--------------+-------------+----------------+
| name      | type              | kind   | null? | default | primary key | unique key | check | expression | comment      | policy name | privacy domain |
|-----------+-------------------+--------+-------+---------+-------------+------------+-------+------------+--------------+-------------+----------------|
| MY_COLUMN | VARCHAR(16777216) | COLUMN | Y     | NULL    | N           | N          | NULL  | NULL       | now comment4 | NULL        | NULL           |
+-----------+-------------------+--------+-------+---------+-------------+------------+-------+------------+--------------+-------------+----------------+
コメント付きのビューを作成してから、コメントを上書きします。
CREATE OR REPLACE VIEW test_comment_view COMMENT='this is comment5' AS (SELECT * FROM test_comment_table_column);
SHOW VIEWS LIKE 'test_comment_view';
+-------------------------------+-------------------+----------+---------------+-------------+---------+------------------+-----+
| created_on                    | name              | reserved | database_name | schema_name | owner   | comment          | ... |
|-------------------------------+-------------------+----------+---------------+-------------+---------+------------------+-----+
| 2025-02-26 12:38:35.440 -0800 | TEST_COMMENT_VIEW |          | MY_DB         | MY_SCHEMA   | MY_ROLE | this is comment5 | ... |
+-------------------------------+-------------------+----------+---------------+-------------+---------+------------------+-----+
COMMENT ON VIEW test_comment_view IS 'now comment6';
SHOW VIEWS LIKE 'test_comment_view';
+-------------------------------+-------------------+----------+---------------+-------------+---------+--------------+-----+
| created_on                    | name              | reserved | database_name | schema_name | owner   | comment      | ... |
|-------------------------------+-------------------+----------+---------------+-------------+---------+--------------+-----+
| 2025-02-26 12:38:35.440 -0800 | TEST_COMMENT_VIEW |          | MY_DB         | MY_SCHEMA   | MY_ROLE | now comment6 | ... |
+-------------------------------+-------------------+----------+---------------+-------------+---------+--------------+-----+