Tipos de dados (Mecanismo de Banco de Dados)
Objetos que contêm dados têm um tipo de dados associado que define o tipo de dados (caractere, inteiro ou binário) que o objeto pode conter. Os seguintes objetos têm tipos de dados:
Colunas em tabelas e exibições.
Parâmetros em procedimentos armazenados
Variáveis.
Funções Transact-SQL que retornam um ou mais valores de dados de um tipo de dados específico.
Procedimentos armazenados que têm um código de retorno que sempre tem um tipo de dados integer.
A atribuição de um tipo de dados a um objeto define quatro atributos do objeto:
O tipo de dados contido pelo objeto.
O comprimento ou tamanho do valor armazenado.
A precisão do número (apenas tipos de dados numéricos).
A escala do número (apenas tipos de dados numéricos).
Para obter mais informações sobre precisão, escala e comprimento de tipos de dados, consulte Precisão, escala e comprimento (Transact-SQL).
O Transact-SQL tem estes tipos de dados do sistema.
Todos os dados armazenados no Microsoft SQL Server devem ser compatíveis com um desses tipos de dados base. O tipo de dados cursor é o único tipo de dados do sistema que não pode ser atribuído a uma coluna de tabela. Ele pode ser usado apenas com variáveis e parâmetros de procedimento armazenado.
Vários tipos de dados base têm sinônimos (por exemplo, rowversion é sinônimo de timestamp e national character varying é sinônimo de nvarchar). Para obter mais informações sobre o comportamento de sinônimos, consulte Sinônimos de tipo de dados (Transact-SQL).
Também podem ser criados dois tipos de tipos de dados definidos pelo usuário:
Tipos de dados alias são criados de tipos de dados base. Eles fornecem um mecanismo para aplicação de um nome a um tipo de dados que descreve melhor os tipos de valores a serem mantidos no objeto. Isso pode facilitar o entendimento do programador ou do administrador do banco de dados quanto ao uso pretendido de qualquer objeto definido com o tipo de dados. Por exemplo:
-- Create a birthday datetype that allows nulls. CREATE TYPE birthday FROM datetime NULL GO -- Create a table using the new data type. CREATE TABLE employee (emp_id char(5), emp_first_name char(30), emp_last_name char(40), emp_birthday birthday)
Para obter mais informações, consulte Trabalhando com tipos de dados de alias.
Tipos de dados CLR definidos pelo usuário são baseados em tipos de dados criados em código gerenciado e carregados em um assembly SQL Server. Para obter mais informações, consulte Trabalhando com tipos de dados CLR definidos pelo usuário.
Consulte também