创建MySQL外键关联_我们的征途是星辰大海_百度空间
要在Mysql数据库平台建立外键关联,必须满足以下几个条件:

1. 两个表必须为 InnoDB 类型。

2. 外键和被引用键必须是索引中的{dy}列,InnoDB 不会自动为外键和被引用键建立索引,必须明确创建

它们。

3. 外键与对应的被引用键在 InnoDB 内必须有相似的内部数据类型,以便他们不需要一个类型转换就可

以进行比较。 整型字段的长度与有符号类型必须一致。 字符型则不需要一致。如果指定了一个SET

NULL 动作,那你必须要确定 子表中的对应字段没有定义为 NOT NULL

示例:

CREATE TABLE parent(id INT NOT NULL,
PRIMARY KEY (id)) TYPE=INNODB;
CREATE TABLE child(id INT, parent_id INT,
INDEX par_ind (parent_id),
FOREIGN KEY (parent_id) REFERENCES parent(id)
ON DELETE CASCADE
) TYPE=INNODB;

可以通过下面的方式在在后来添加外键约束:

ALTER TABLE yourtablename
ADD [CONSTRAINT symbol] FOREIGN KEY [id] (...)
REFERENCES table_name (index_col_name, ...)
[ON DELETE {CASCADE | SET NULL | NO ACTION
| RESTRICT}]
[ON UPDATE {CASCADE | SET NULL | NO ACTION
| RESTRICT}]
还可以使用 SHOW CREATE TABLE 'TABLENAME'来查看创建语句(如果使用了工具)

navicat中使用步骤:

定位于外键所在表->设计表,首先建立索引

栏位名中填入外键,必须是{dy}列,INNODB所规定

接着创建外键

cascade表示级联更新删除

保存就行了

如果有遇can't create....erron(150), 检查一下数值型属性有没有定义为unsigned。

from:



郑重声明:资讯 【创建MySQL外键关联_我们的征途是星辰大海_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——