【发布时间】:2012-12-16 13:20:44
【问题描述】:
假设数据库中有两个表。第一个是 X,第二个是 Y。Y 表在 X 表上有一个外键。因此,如果 Y 表上有记录,则它的外键相关列值必须存在于 X 表上。这是默认行为。
X Y
------- -------
ID ID
XID <--- Foreignkey to X table.
现在,对于 X 表中的所有记录,我想保证 Y 表上必须至少有一条记录。如果没有,它应该自动添加一个。我该怎么做?
【问题讨论】:
-
嗯,你正在从 X 的 Y 表中设置一个外键。所以你输入到 Y 表的每条记录都会有
XID不是吗? (鉴于外键不能为空)那么问题是什么?我假设你的意思是说 “现在,对于 Y 表中的所有记录,我想保证 X 表上必须至少有一条记录。如果没有,它应该自动添加一条。” -
我想我无法解释我想要什么。认为有一本书,我想保证至少有一页。假设 book 和 page 是数据库中的表。
标签: sql stored-procedures triggers foreign-key-relationship