Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Altere o tipo de coluna sem perder dados


Você não precisa adicionar uma nova coluna duas vezes, basta remover a antiga depois de atualizar a nova:
ALTER TABLE table_name ADD new_column_name decimal(18,2)

update table_name
set new_column_name = convert(decimal(18,2), old_column_name)

ALTER TABLE table_name DROP COLUMN old_column_name

Observe que se o old_column_name não for numérico, o convert pode falhar.