TSQL alter table在删除和更新时为级联添加约束

won*_*nea 3 t-sql sql-server-2008-r2

我正在尝试使用tsql中的更新和删除创建约束.我尝试了几种不同的方法,现在我有点卡住和沮丧 - 看起来很简单.我知道你不能改变现有的约束,所以我不确定如何做到这一点;

alter table AllowedCars 
   add constraint FK_AllowedCars_CarID foreign key (CarID) 
      references Cars(LocusID) on delete cascade, 
constraint FK_AllowedCars_CarID foreign key (CarID) 
   references Cars(CarID) on update cascade
Run Code Online (Sandbox Code Playgroud)

或这个;

alter table AllowedCars add constraint FK_AllowedCars_CarID foreign key (CarID) 
   references Cars(CarID) on delete cascade and on update cascade
Run Code Online (Sandbox Code Playgroud)

Nik*_*vić 10

您需要先删除约束,然后重新创建它.你的第二次尝试是正确的,但你需要删除and.

alter table AllowedCars 
  drop constraint FK_AllowedCars_CarID 

alter table AllowedCars 
  add constraint FK_AllowedCars_CarID 
      foreign key (CarID) 
      references Cars(CarID) 
      on delete cascade 
      on update cascade
Run Code Online (Sandbox Code Playgroud)