Partilhar via


Modificando propriedades da coluna

Cada coluna em uma tabela tem um conjunto de propriedades, como nome, tipo de dados, nulidade e comprimento de dados. O conjunto completo de propriedades de uma coluna constitui a definição da coluna em uma tabela.

Tipo de dados da coluna

O tipo de dados de uma coluna existente pode ser alterado, contanto que os dados existentes na coluna possam ser implicitamente convertidos no novo tipo de dados. Para obter mais informações, consulte ALTER TABLE (Transact-SQL).

Comprimento de dados da coluna

Quando você seleciona um tipo de dados, o comprimento é definido automaticamente. É possível aumentar ou diminuir a propriedade de comprimento somente para uma coluna com um tipo de dados binary, char, nchar, varbinary, varchar ou nvarchar. Para colunas com outros tipos de dados, o comprimento é derivado do tipo de dados e não pode ser alterado. Se o novo comprimento especificado for menor do que o comprimento da coluna original, todos os valores na coluna que excederem o novo comprimento serão truncados sem aviso. Não é possível alterar o comprimento de uma coluna definida com a restrição PRIMARY KEY ou FOREIGN KEY.

Precisão da coluna

A precisão de uma coluna numérica é o número máximo de dígitos usado pelo tipo de dados selecionado. A precisão de uma coluna não numérica geralmente se refere ao comprimento máximo ou ao comprimento definido da coluna.

Para todos os tipos de dados, exceto decimal e numeric, a precisão é definida automaticamente. Você poderá alterar a precisão da coluna para os tipos de dados decimal e numeric se quiser redefinir o número máximo de dígitos usados por essas colunas. O Mecanismo de Banco de Dados do SQL Server impede que você altere a precisão de uma coluna que não tem um desses tipos de dados atribuídos.

Escala da coluna

A escala de uma coluna numeric ou decimal vai até o número máximo de dígitos à direita da casa decimal. Quando você seleciona um tipo de dados, a escala da coluna é, por padrão, definida como 0. Para colunas com números de pontos flutuantes aproximados, a escala não é definida porque o número de dígitos à direita da casa decimal não é fixo. Você pode alterar a escala para uma coluna numeric ou decimal se quiser redefinir o número de dígitos que podem ser exibidos à direita da casa decimal.

Nulidade da coluna

Uma coluna pode ser definida para permitir ou não valores nulos. Por padrão, uma coluna permite valores nulos. Uma coluna existente pode ser alterada para não permitir valores nulos apenas se não existirem valores nulos na coluna e nenhum índice criado na coluna. Para não permitir valores nulos em uma coluna existente que contém valores nulos, siga estas etapas:

  1. Adicione uma nova coluna com uma definição DEFAULT que insere um valor válido em vez de NULL.

  2. Copie os dados da coluna antiga e existente na nova coluna.

  3. Exclua a coluna antiga.

Uma coluna existente que não permite valores nulos pode ser alterada para permitir valores nulos, a menos que uma restrição PRIMARY KEY seja definida na coluna.

Colunas esparsas e conjuntos de colunas

Colunas esparsas são colunas que contêm valores nulos para a maioria das linhas na tabela. Considere o uso de colunas esparsas quando 20 a 40 por cento dos valores em uma coluna forem NULL. Colunas esparsas são colunas normais que têm um armazenamento otimizado para valores nulos. Para obter mais informações, consulte Usando colunas esparsas.

Tabelas que usam colunas esparsas podem designar um conjunto de colunas para retornar todas as colunas esparsas na tabela. Um conjunto de colunas é uma representação XML sem tipo que combina todas as colunas esparsas de uma tabela em uma saída estruturada. Um conjunto de colunas é semelhante a uma coluna calculada em que o conjunto de colunas não é fisicamente armazenado na tabela. Para obter mais informações, consulte Usando conjuntos de colunas.

Para definir propriedades da coluna

Para exibir propriedades da coluna

Para renomear uma coluna

Consulte também

Referência