SQL foreign key 有什么作用?举列简单说一下,,怎么用?

如题所述

由此可见,外键表示了两个关系之间的联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。外键又称作外关键字。换而言之,如果关系模式R中的某属性集不是R的主键,而是另一个关系R1的主键则该属性集是关系模式R的外键,通常在数据库设计中缩写为FK。 外键的作用: 保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。 使两张表形成关联,外键只能引用外表中的列的值! 外键使用实例例如: student(s#,sname,d#),即学生这个关系有三个属性:学号,姓名,所在系别。 dep(d#,dname),即院系有两个属性:系号、系名。 则s#、d#是主键,也是各自所在关系的唯一候选键,d#是student的外键。 建立外键的前提: 本表的列必须与外键类型相同(外键必须是外表主键)。 指定外键关键字: foreign key(列名) 引用外键关键字: references (外键列名) 事件触发限制: on delete和on update , 可设参数cascade(跟随外键改动), restrict(限制外表中的外键改动),set Null(设空值),set Default(设默认值),[默认]no action 例如: outTable表 主键 id 类型 int 创建含有外键的表: create table temp( id int, name char(20), foreign key(id) references outTable(id) on delete cascade on update cascade); 说明:把id列 设为外键 参照外表outTable的id列 当外键的值删除 本表中对应的列筛除 当外键的值改变 本表中对应的列值改变。 建键几个原则1、 为关联字段创建外键。 2、 所有的键都必须唯一。 3、避免使用复合键。 4、外键总是关联唯一的键字段。
温馨提示:答案为网友推荐,仅供参考
相似回答