【30分学生请问】谁能给我详细的解释一下什么叫主键外键什么叫级联删除

ziseshatan 2006-11-06 02:41:33
主键我能理解 那么外键呢 在开发中一般都
用在哪里 什么叫级联删除 和外键有关系吗
谢谢
...全文
314 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangjie19780203 2006-11-06
  • 打赏
  • 举报
回复
手动代码编写
ziseshatan 2006-11-06
  • 打赏
  • 举报
回复
那能不能自动删除
就是在员工表里面吧员工ID删除了
那么部门表里面的含有这个员工的信息(一行)就自动删除
还是必须要我们手动删除
zhangjie19780203 2006-11-06
  • 打赏
  • 举报
回复
比如员工表和部门表 员工表中一个字段员工ID 是员工表的主建,他在部门表里是部门表的外建, 假如你要根据员工ID删除员工表中一个员工,你就还要去部门表里把含有这个员工ID的其他信息一起删掉,这就叫集联删除
凋零的老树 2006-11-06
  • 打赏
  • 举报
回复
外键是一个表的某个字段在别的表是主键
积木 2006-11-06
  • 打赏
  • 举报
回复
这样做的目的是,保证数据完整性。
积木 2006-11-06
  • 打赏
  • 举报
回复
有一些表本身没有主键,而参考其他表的主键来对本表进行处理。
比如说
table-book key book-number
table-user key user-number
而借书表就可以参考上面的两个键来组成自己的键,而不用自己另外加键
table-book-user key (table-book.book-number,table-user.user-number)

级连删除更好说了,比如说你要在table-book中删除一条书的纪录,那么table-book-user里面就应该保证没有和这本书相关的纪录,如果存在这样的纪录,我们就需要将起一起删除。
本来你删除了一条table-book里面的纪录,却造成了table-book-user里面的删除动作,这就叫做株连九族,就是级连删除。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧