-1

以下 SOL 不起作用:

update table1 
   set col2=null, col3=null 
 where id=195366

如果我只更新一列,它可以工作

update table1 
   set col2=null 
 where id=195366
4

1 回答 1

1

这可能会失败的原因有很多。col3可能有一个NOT NULL约束(a)col2+col3可能是复合主键,表上可能有一个触发器,不允许同时存在NULL等等。

如果没有看到所有数据库设置(表定义、触发器等)以及您在尝试时遇到的实际错误,很难确定。


(a)请记住,该语句是原子的——要么两者都设置为 NULL,要么都不会更改,在适当的事务数据库中不可能有中途状态。

于 2013-09-13T06:18:47.603 回答