要在Mysql数据库平台建立外键关联,必须满足以下几个条件:
示例:
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中使用步骤:
定位于外键所在表->设计表,首先建立索引
栏位名中填入外键,必须是第一列,INNODB所规定
接着创建外键
保存就行了
如果有遇can't create....erron(150), 检查一下数值型属性有没有定义为unsigned。