Sinônimos de tipo de dados (Transact-SQL)

Aplica-se a:yesSQL Server (todas as versões com suporte) YesBanco de Dados SQL do Azure YesInstância Gerenciada de SQL do Azure

Os sinônimos de tipos de dados são incluídos no SQL Server para compatibilidade com o padrão ISO. A tabela a seguir lista os sinônimos e os tipos de dados do sistema SQL Server para os quais são mapeados.

Sinônimo Tipo de dados do sistema SQL Server
Binary varying varbinary
char varying varchar
character char
character char(1)
character(n) char(n)
character varying(n) varchar(n)
Dez decimal
Precisão dupla float
float[ (n) ] para n = 1-7 real
float[ (n) ] para n = 8-15 float
inteiro int
national character(n) nchar(n)
national char(n) nchar(n)
national character varying(n) nvarchar(n)
national char varying(n) nvarchar(n)
national text ntext
rowversion timestamp

Os sinônimos de tipo de dados podem ser usados no lugar do nome do tipo de dados base correspondente em instruções DDL (linguagem de definição de dados). Essas instruções incluem CREATE TABLE, CREATE PROCEDURE e DECLARE @variable. Entretanto, depois que o objeto é criado, os sinônimos não têm nenhuma visibilidade. Quando o objeto é criado, é atribuído a ele o tipo de dados base associado ao sinônimo. Não há nenhum registro de que o sinônimo foi especificado na instrução que criou o objeto.

O tipo de dados base é atribuído aos objetos derivados do objeto original, como expressões ou colunas de conjuntos de resultados. Todas as funções de metadados que usam o objeto original ou qualquer objeto derivado relatarão o tipo de dados base, não o sinônimo, incluindo:

  • operações de metadados, como sp_help e outros procedimentos armazenados do sistema,
  • exibições do esquema de informações e
  • operações de metadados da API de acesso a dados que relatam os tipos de dados das colunas da tabela ou do conjunto de resultados.

Por exemplo, você pode criar uma tabela especificando national character varying:

CREATE TABLE ExampleTable (PriKey int PRIMARY KEY, VarCharCol national character varying(10))  

VarCharCol é atribuído a um tipo de dados nvarchar(10), e todas as funções de metadados seguintes relatarão a coluna como nvarchar(10). As funções de metadados nunca serão informadas como uma coluna national character varying(10).

Confira também

Tipos de dados (Transact-SQL)