Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Modifica il tipo di colonna senza perdere dati

Non è necessario aggiungere una nuova colonna due volte, basta rimuovere quella vecchia dopo aver aggiornato la nuova:

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

Nota che se il old_column_name non è numerico, il convert potrebbe non riuscire.