Partilhar via


Identifiers

Aplica-se a: Marque Sim Databricks SQL Marque Sim Databricks Runtime

Um identificador é uma cadeia de caracteres usada para identificar um objeto, como uma tabela, exibição, esquema ou coluna. O Azure Databricks dá suporte a identificadores não delimitados (regulares) e identificadores delimitados, que são incluídos em backticks.

Os identificadores não diferenciam maiúsculas de minúsculas quando referenciados.

Para identificadores persistentes com um metastore e fonte de dados, os caracteres permitidos podem ser restritos.

Consulte Nomes para obter detalhes sobre o uso específico de identificadores.

Identificadores não delimitados

Sintaxe

{ letter | '_' } [ letter | digit | '_' ] [ ... ]

Parâmetros

  • carta: Qualquer carta ASCII de A-Z ou a-z.
  • dígito: Qualquer algarismo ASCII de 0 até 9.

Nota

No Databricks Runtime, se spark.sql.ansi.enabled e spark.sql.ansi.enforceReservedKeywords estiver definido como true, você não poderá usar uma palavra-chave reservada ANSI SQL como um identificador não delimitado. Para obter detalhes, consulte Conformidade ANSI.

Identificadores delimitados

Sintaxe

`c [ ... ]`

Parâmetros

  • c: Qualquer caractere do conjunto de caracteres Unicode. Use ` para escapar ` de si mesmo.

Exemplos

-- This statement fails because the undelimited identifier uses a non-ASCII letter.
> DESCRIBE SELECT 5 AS Ä;
 INVALID_IDENTIFIER

-- You can delimit the identifier to use a non-ASCII letter
> DESCRIBE SELECT 5 AS `Ä`;
 Ä

-- An identifier with dash needs to be delimited
> DESCRIBE SELECT 5 AS `a-b`;
 a-b

-- An identifier with a space needs to be delimited
> DESCRIBE SELECT 5 AS `a b`;
 a b

-- An identifier with a special character needs to be delimited
> DESCRIBE SELECT 5 AS `a@b`;
 a@b

-- An identifier with a Chinese character needs to be delimited
> DESCRIBE SELECT 5 AS `a中b`;
 a中b

-- An identifier with a backtick needs to be delimited and escaped.
> DESCRIBE SELECT 5 AS `a``b`;
 a`b