Exibiçã oCOLUMNS (vários esquemas): Nova coluna (pendente)¶
Atenção
Essa alteração de comportamento está no pacote 2025_07.
Para saber o status atual do pacote, consulte Histórico do pacote.
Quando esse pacote de mudança de comportamento está habilitado, a exibição COLUMNS em Account Usage, Organization Usage e Information Schema inclui a seguinte nova coluna:
Nome da coluna |
Tipo de dados |
Descrição |
|---|---|---|
|
VARCHAR |
O tipo de dados alias ou sinônimo especificado para a coluna quando a tabela foi criada ou quando a coluna foi alterada pela última vez. Para colunas em tabelas que foram criadas antes desta mudança de comportamento e não alteradas após a mudança de comportamento, o valor nesta coluna é NULL. |
O data_type A coluna mostra o tipo de dados padrão do Snowflake da coluna. O data_type_alias A coluna exibe o nome original do tipo de dados que foi especificado para uma coluna quando uma tabela foi criada ou quando a coluna foi alterada com um ALTER TABLE table ALTER COLUMN column SET DATA TYPE data_type Instrução.
Por exemplo, NUMBER é um tipo de dados padrão do Snowflake. BIGINT é sinônimo de NUMBER. Se você especificar BIGINT como o tipo de dados para uma coluna, o data_type Coluna em COLUMNS exibição mostra NUMBER para esta coluna, mas o data_type_alias A coluna mostra BIGINT:
CREATE TABLE test_data_type_alias (b BIGINT);
SELECT data_type, data_type_alias
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'TEST_DATA_TYPE_ALIAS';
+-----------+-----------------+
| DATA_TYPE | DATA_TYPE_ALIAS |
|-----------+-----------------|
| NUMBER | BIGINT |
+-----------+-----------------+
Quando um tipo de dados Snowflake padrão e não qualificado é especificado para uma coluna, os valores no data_type e data_type_alias As colunas são as mesmas. Por exemplo, se NUMBER é especificado como o tipo de dados de uma coluna, então data_type e data_type_alias no COLUMNS exibição ambos mostram NUMBER como o tipo de dados:
CREATE TABLE test_data_type_alias_2 (n NUMBER);
SELECT data_type, data_type_alias
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'TEST_DATA_TYPE_ALIAS_2';
+-----------+-----------------+
| DATA_TYPE | DATA_TYPE_ALIAS |
|-----------+-----------------|
| NUMBER | NUMBER |
+-----------+-----------------+
O data_type_alias A coluna mostra o nome exato que foi especificado para um tipo de dados. Por exemplo, a seguinte instrução cria uma tabela com um totalmente qualificado NUMBER Coluna:
CREATE TABLE test_data_type_alias_3 (n NUMBER(16, 2));
SELECT data_type, data_type_alias
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'TEST_DATA_TYPE_ALIAS_3';
+-----------+-----------------+
| DATA_TYPE | DATA_TYPE_ALIAS |
|-----------+-----------------|
| NUMBER | NUMBER(16, 2) |
+-----------+-----------------+
As únicas exceções são Tipos de dados para strings de texto. O tipo de dados padrão do Snowflake para strings de texto é VARCHAR, mas a coluna data_type exibe TEXT para estas colunas:
CREATE TABLE test_data_type_alias_4 (
c CHAR,
s STRING,
t TEXT,
v VARCHAR,
vq VARCHAR(25));
SELECT column_name, data_type, data_type_alias
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'TEST_DATA_TYPE_ALIAS_4'
ORDER BY column_name;
+-------------+-----------+-----------------+
| COLUMN_NAME | DATA_TYPE | DATA_TYPE_ALIAS |
|-------------+-----------+-----------------|
| C | TEXT | CHAR |
| S | TEXT | STRING |
| T | TEXT | TEXT |
| V | TEXT | VARCHAR |
| VQ | TEXT | VARCHAR(25) |
+-------------+-----------+-----------------+
Essa mudança de comportamento afeta todos os scripts ou processos de carregamento de dados que utilizam SELECT * para consultar essas exibições e dependem de um número fixo de colunas. Para evitar qualquer interrupção, revise seus scripts e aplicativos. Atualização de qualquer consulta em ACCOUNT_USAGE.COLUMNS, ORGANIZATION_USAGE.COLUMNSe INFORMATION_SCHEMA.COLUMNS para especificar as colunas exatas necessárias, em vez de usar SELECT *.
Ref: 2061