COMMENT¶
Adiciona um comentário ou substitui um comentário existente para um objeto existente.
Os comentários podem ser adicionados a todos os objetos (usuários, funções, warehouses, bancos de dados, tabelas etc.). Você também pode usar esse comando para adicionar comentários a colunas individuais da tabela, mas não a restrições de colunas.
Sintaxe¶
COMMENT [ IF EXISTS ] ON <object_type> <object_name> IS '<string_literal>';
COMMENT [ IF EXISTS ] ON COLUMN <table_name>.<column_name> IS '<string_literal>';
Parâmetros¶
ON object_type object_name
Adiciona um comentário ao objeto do tipo especificado (por exemplo,
TABLE
,SCHEMA
,VIEW
, e assim por diante) com o identificador especificado.Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.
Para obter mais informações, consulte Requisitos para identificadores.
ON COLUMN table_name.column_name
Adiciona um comentário à coluna da tabela especificada.
Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.
Para obter mais informações, consulte Requisitos para identificadores.
IS string_literal
Especifica o comentário a ser adicionado.
Padrão:
NULL
Notas de uso¶
Você também pode adicionar ou modificar comentários quando estiver criando ou alterando objetos:
Para adicionar um comentário, especifique o parâmetro
COMMENT
no comando CREATE <objeto> ou ALTER <objeto>.Para modificar um comentário existente, especifique o parâmetro
COMMENT
no comando ALTER <objeto>.
Uma sintaxe ligeiramente diferente é usada para adicionar ou modificar comentários nas colunas da tabela:
Para adicionar um comentário na criação, siga a declaração da coluna com a palavra-chave
COMMENT
(não propriedade).Para modificar um comentário, use este comando.
Para adicionar um comentário a uma restrição, use o comando CREATE TABLE ou CREATE | ALTER TABLE … CONSTRAINT.
A saída de DESCRIBE TABLE não mostra comentários sobre restrições de tabela, como chaves primárias de várias colunas. Para ver esses comentários, consulte Exibição TABLE_CONSTRAINTS.
Em relação aos metadados:
Atenção
Os clientes devem garantir que nenhum dado pessoal (exceto para um objeto do usuário), dados sensíveis, dados controlados por exportação ou outros dados regulamentados sejam inseridos como metadados ao usar o serviço Snowflake. Para obter mais informações, consulte Campos de metadados no Snowflake.
Exemplos¶
Crie um esquema com um comentário e, em seguida, substitua o comentário:
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 | ... |
+-------------------------------+-----------+------------+------------+---------------+---------+--------------+---------+----------------+-----+
Criar uma tabela com um comentário em uma coluna da tabela e, em seguida, substituir o comentário:
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 |
+-----------+-------------------+--------+-------+---------+-------------+------------+-------+------------+--------------+-------------+----------------+
Criar uma exibição com um comentário, depois substituir o comentário:
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 | ... |
+-------------------------------+-------------------+----------+---------------+-------------+---------+--------------+-----+