Existe uma maneira de alterar a precisão de uma coluna decimal existente no Sql Server?
Existe uma maneira de alterar a precisão de uma coluna decimal existente no Sql Server?
Respostas:
ALTER TABLE Testing ALTER COLUMN TestDec decimal(16,1)
Basta colocar decimal(precision, scale), substituindo a precisão e a escala pelos valores desejados.
Não fiz nenhum teste com isso com os dados da tabela, mas se você alterar a precisão, estará sujeito a perder dados se a nova precisão for menor.
Pode haver uma maneira melhor, mas você sempre pode copiar a coluna em uma nova coluna, descartá-la e renomear a nova coluna de volta para o nome da primeira coluna.
a saber:
ALTER TABLE MyTable ADD NewColumnName DECIMAL(16, 2);
GO
UPDATE MyTable
SET NewColumnName = OldColumnName;
GO
ALTER TABLE CONTRACTS DROP COLUMN OldColumnName;
GO
EXEC sp_rename
@objname = 'MyTable.NewColumnName',
@newname = 'OldColumnName',
@objtype = 'COLUMN'
GO
Isso foi testado no SQL Server 2008 R2, mas deve funcionar no SQL Server 2000+.
Vá para o gerente da empresa, tabela de projetos, clique em seu campo.
Faça uma coluna decimal
Nas propriedades na parte inferior há uma propriedade de precisão