¿Hay alguna forma de alterar la precisión de una columna decimal existente en Sql Server?
sql-server
Andrew Jones
fuente
fuente
Puede haber una mejor manera, pero siempre puede copiar la columna en una nueva columna, soltarla y cambiar el nombre de la nueva columna de nuevo al nombre de la primera columna.
esto es:
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
Esto se probó en SQL Server 2008 R2, pero debería funcionar en SQL Server 2000+.
fuente
ALTER TABLE (Your_Table_Name) MODIFY (Your_Column_Name) DATA_TYPE();
Para tu problema:
ALTER TABLE (Your_Table_Name) MODIFY (Your_Column_Name) DECIMAL(Precision, Scale);
fuente
ALTER TABLE `tableName` CHANGE `columnName` DECIMAL(16,1) NOT NULL;
Yo uso esto para la alteración
fuente
Vaya al administrador de la empresa, tabla de diseño, haga clic en su campo.
Haz una columna decimal
En las propiedades en la parte inferior hay una propiedad de precisión
fuente