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

Modifica il valore predefinito in SQL Server

Quando aggiungi una colonna con un valore predefinito, ciò che accade è che viene creato un vincolo predefinito:

create table _temp 
( x int default 1)

sp_help _temp risultato:

constraint_type constraint_name
DEFAULT on column x DF___temp__x__5A3B20F9

Quindi la clausola predefinita nella definizione di colonna è solo una scorciatoia per creare un vincolo; il valore predefinito non è una proprietà intrinseca di una colonna. Se vuoi modificare il valore predefinito per una colonna già esistente, devi prima eliminare il vincolo:

alter table _temp drop constraint DF___temp__x__5A3B20F9 

E quindi crea un nuovo vincolo predefinito:

alter table _temp add constraint DF_temp_x default 2 for x