为什么删除级联不可能为可空列?

时间:2016-09-08 17:27:57

标签: sql-server foreign-keys ssms nullable

我尝试使用SQL Server通过create设计器通过SSMS 11.0.6020.0 table table primary key column。我已经定义了foreign keyOn Delete Cascadeon delete。一切都很好,但是当我按Ctrl + s保存脚本时,我收到一条错误消息,指出on update可能导致循环并更改删除行为。我已按照给出的说明将do nothingnullable更改为column,将foreign key on delete cascade更改为on update cascade,但我想知道是什么问题nullableforeign key table nullable是问题。

我的问题与this one有关,但据我所知,这不是重复,因为我对给定的column有一个引用,问题是它是{{1另一个问题是关于多个引用。但错误信息类似。

我相信如果记录的nulltable,那么它在引用的delete中没有引用,因此没有引用可以触发{{1该记录上的/ update。但是,如果有引用,那么在这种情况下,column可能就像nullable一样。是否存在这种行为的客观原因(如性能,索引等)?当nullable column用作foreign key时,我根本看不到可能的周期,因为根据我的null值应该不受参考表更改的影响意见。

0 个答案:

没有答案