SQL 主外键

来源:互联网 发布:淘宝过了售后申请时间 编辑:程序博客网 时间:2024/05/22 22:30

以下面三张表为例:

有三张表,一张表是读者信息,有一个属性为readno,一张表是图书的信息,有一个属性是bookno,一张表是借阅关系,有两个属性分别以读者信息表中的readno,和图书信息表中的bookno为外键,我想问的是,在借阅关系表中插入数据时不是得自己写入readno和bookno吗,这样,设外键还有什么作用?

答案:
外键取值规则:空值或参照的主键值。
(1)插入非空值时,如果主键表中没有这个值,则不能插入。
(2)更新时,不能改为主键表中没有的值。
(3)删除主键表记录时,你可以在建外键时选定外键记录一起级联删除还是拒绝删除。
(4)更新主键记录时,同样有级联更新和拒绝执行的选择。

简言之:

起约束作用,就是在借阅关系表中只能插入读者/图书信息表中存在的值
不然会出错.
作用在于如果你插入的readno或者bookno在两个表中没有,就会插不进去
原创粉丝点击