mysql进阶(十一)外键在数据库中的作用


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

MySQL外键的作用

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

例1

ab两个表

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

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

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

建立外键的前提

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

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

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

事件触发限制

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

例2

outTable表主键id类型int

创建含有外键的表:

createtabletemp(

idint,

namechar(20),

foreignkey(id)referencesoutTable(id)ondeletecascadeonupdatecascade);

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

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

优质内容筛选与推荐>>
1、[C] include <filename> 和 include "filename" 的区别
2、几句经典的话
3、Ajax运用总结B
4、十四、MySQL UPDATE 查询
5、C++ 容器set与multiset


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号