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