MySQL外键在数据库中的作用

MySQL外键的目的是控制存储在外键表中的数据,使两张表形成关联,是MySQL数据库中非常重要的组成部分,值得我们去深入了解。那么,MySQL外键究竟起到哪些作用呢?下文就将带您一探其中的秘密。

MySQL外键的作用

保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。使两张表形成关联,外键只能引用外表中列的值!

1

ab两个表

a表中存有客户号,客户名称

b表中存有每个客户的订单

有了外键后,你只能在确定b表中没有客户x的订单后,才可以在a表中删除客户x

建立外键的前提

本表的列必须与外键类型相同(外键必须是外表主键)

指定主键关键字:foreignkey(列名)

引用外键关键字:references<外键表名>(外键列名)

事件触发限制

ondeleteonupdate,可设参数cascade(跟随外键改动),restrict(限制外表中的外键改动),setNull(设空值),setDefault(设默认值),[默认]noaction

2

outTable表主键id类型int

创建含有外键的表:

createtabletemp(

idint,

namechar(20),

foreignkey(id)referencesoutTable(id)ondeletecascadeonupdatecascade);

说明:把id列设为MySQL外键,参照外表outTableid列。当外键的值删除,本表中对应的列删除;当外键的值改变本表中对应的列值改变。

MySQL一张表只能有一个主键,主键可以由多个字段组成。

美文美图



更多相关文章

  1. 客户端处理和服务器端处理,哪个比较快?
  2. 将大型阵列传输到客户端
  3. 【JavaScript】离线应用与客户端存储
  4. 如何用NodeJS组织构建、服务器、客户端和共享JavaScript代码
  5. 我如何捕获并插入Meteor.Error警报从Meteor.Methods到客户端数据
  6. 如何将变量推送到web客户端以获取ajax?
  7. 如何使用客户端Javascript数组并通过节点发布。将js API插入Mong
  8. Javascript日期/时间函数是否依赖于客户端机器?
  9. 应用Python开发WebService服务端及客户端

随机推荐

  1. 大文件从指定行开始读取
  2. 如何通过热门/上升的帖子订购
  3. mysql_query会自动执行,但不会在onClick时
  4. php写app接口并返回json数据
  5. PHP环境搭建和编写API接口
  6. ajax php bomt头 utf-8带来的奇怪问题。
  7. MySQL错误1046:未选择数据库
  8. PHP 开发环境配置
  9. php使用gd库将文字转换成图片
  10. 纯php文件不加结束标记的好处