返回首页

情况是这样的。我有删除子表中的记录。
但在表的架构,是从孩子的重要参考外国
表的父表。

因此,为了删除的记录,我需要设置外键
父表中的空细胞。但是我发现,父记录该列上有NOT NULL约束。所以我不能够设置它为空。

最后,子表不能被删除。因此,我如何能删除子表记录任何建议?


ParentTable

{

id int PK,

child_id int FK NOT NULL,

Other_id int FK NOT NULL

}

 

ChildTable

{

child_id int PK

}

回答

评论会员:游客 时间:2012/02/04
尝试想着你正在尝试做的一个具体的例子认为父表中代表整个自行车,其中*必须*包括前轮,子表表示前轮的时刻。你正在尝试做的是偷自行车的前轮,并期待它仍然是一个自行车。生活是不喜欢这样,即使在数据库。即使一个前轮可以属于几个自行车,持有相同的想法。我敢肯定有更好例如周围,但此人应该得到点跨越。欢呼声中,彼得
米卡Wendelius
评论会员:游客 时间:2012/02/04
如果你将能够删除子记录,这将是预期的结果?或例如,如果你有一个引用ID为1childtable在parenttable记录。现在你删除的childtable的行,这将是上在child_id其余行的价值?我建议你​​仔细检查设计的表,如果它确实是一个设计缺陷,彼得建议,说话的人,谁是负责该架构进行修改。