如何创建 mysql 外键约束?明确父表和子表。在父表中建立主键约束。在子表中建立外键约束,引入父表中的特殊列。
copyright zvvq
如何创建 MySQL 外键约束
在 MySQL 中建立外键约束可确保数据完整性,并阻止对父表不一致的变更。以下步骤表明如何创建外键约束:
内容来自samhan666
流程 1:明确父表和子表
确定要创建外键联系的父表和子表。外键列将存在子表中,并引入父表中的主键列。
zvvq好,好zvvq
流程 2:建立父表管束 zvvq.cn
在父表中建立主键约束以唯一标识每排。比如:
ALTERTABLEparent_tableADDPRIMARYKEY(id);
流程 3:在子表中建立外键约束 zvvq好,好zvvq
应用 FOREIGN KEY 子句在子表中建立外键约束,引入父表中特殊列。比如:
ALTERTABLEchild_tableADD FOREIGN KEY (parent_id)REFERENCESparent_table(id); zvvq好,好zvvq
管束选项 内容来自zvvq
还可以配置下列管束选项:
ONUPDATECASCADE:当父表中相关记录产生变更时,将自动升级子表中引入记录。ONDELETECASCADE:当父表中相关记录被删除时,将自动删除子表中引入记录。ONUPDATERESTRICT/SETNULL/SETDEFAULT:依据指定操作(限定、设定为空或设置默认值)去处理对父表中相关记录更新。ONDELETERESTRICT/SETNULL/SETDEFAULT:依据指定操作(限定、设定为空或设置默认值)去处理对父表中相关记录的删掉。实例 内容来自samhan666
下列实例创建一个父表 customers 和一个子表 orders,其中 customer_id 列是子表中的外键,引入 customers 表中的 id 列: zvvq
CREATETABLE customers (
内容来自samhan
idINTNOTNULLAUTO_INCREMENT,
nameVARCHAR(255)NOTNULL, 内容来自samhan
PRIMARYKEY(id) zvvq.cn
);
zvvq.cn
CREATETABLE orders(
内容来自zvvq
idINTNOTNULLAUTO_INCREMENT,
customer_idINTNOTNULL, copyright zvvq
product_idINTNOTNULL, zvvq好,好zvvq
FOREIGNKEY(customer_id)REFERENCEScustomers(id) 内容来自samhan
); zvvq
通过创建外键约束,能够确保 orders表中的记录与 customers 表中的合理纪录相关联。这有助于避免数据不一致,并维护数据库的完整性。
以上就是mysql外键约束怎么做的详细内容,大量请关注其他类似文章! copyright zvvq