MySQL外键在数据库中的作用


  本文标签:MySQL外键

  MySQL外键是MySQL数据库中非常重要的部分,那么,MySQL外键究竟起到哪些作用呢?下文就将带您一探其中的秘密  。

  MySQL外键的作用:

  保持数据一致性,完整性,主要目的是控制存储在外键表中的数据  。 使两张表形成关联,外键只能引用外表中的列的值!
例如:
a b 两个表
a表中存有 客户号,客户名称
b表中存有 每个客户的订单
有了外键后
你只能在确信b 表中没有客户x的订单后,才可以在a表中删除客户x

  建立外键的前提: 本表的列必须与外键类型相同(外键必须是外表主键)  。

  指定主键关键字: 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列 设为MySQL外键 参照外表outTable的id列 当外键的值删除 本表中对应的列筛除 当外键的值改变 本表中对应的列值改变  。