Mysql 表univ/#sql-bf4_4的外键约束出错:
我无法添加具有成员和校园表之间关系的外键。特定字段设置为主键。数据类型也相同 各表如下:Mysql 表univ/#sql-bf4_4的外键约束出错:,mysql,syntax,foreign-keys,Mysql,Syntax,Foreign Keys,我无法添加具有成员和校园表之间关系的外键。特定字段设置为主键。数据类型也相同 各表如下: +------------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------------+-------------+------+-----+---------+-------+ | membe
+------------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------------+-------------+------+-----+---------+-------+
| memberid | int(11) | NO | PRI | NULL | |
| lastname | char(30) | NO | | NULL | |
| firstname | char(30) | NO | | NULL | |
| campusaddress | varchar(30) | NO | | NULL | |
| campusphone | int(11) | NO | | NULL | |
| campusid | int(11) | NO | | NULL | |
| positionid | int(11) | NO | | NULL | |
| contractduration | int(11) | YES | | NULL | |
+------------------+-------------+------+-----+---------+-------+
8 rows in set (0.00 sec)
mysql> desc campus;
+----------------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------------+----------+------+-----+---------+-------+
| campusid | int(11) | NO | PRI | NULL | |
| campusname | char(30) | NO | | NULL | |
| street | char(30) | NO | | NULL | |
| city | char(30) | NO | | NULL | |
| state | char(15) | NO | | NULL | |
| pin | int(11) | NO | | NULL | |
| phone | int(11) | NO | | NULL | |
| campusdiscount | int(11) | NO | | NULL | |
+----------------+----------+------+-----+---------+-------+
8 rows in set (0.00 sec)
ALTER TABLE members add foreign key (campusid) references campus;
ERROR 1215 (HY000): Cannot add foreign key constraint
或
具体错误:
------------------------
LATEST FOREIGN KEY ERROR
------------------------
2020-02-10 09:23:38 0x2ccc Error in foreign key constraint of table univ/#sql-bf4_4:
foreign key (positionid) references position:
Syntax error close to:
这可能有点傻,因为我是做这些的专家。请帮忙 太接近了,有一点遗漏了,那就是父表(
campus
)的主键列名(campusid
)。考虑使用
alter table members
add constraint members_campusid_fk
foreign key(campusid) references campus(campusid)
或者约束成员\u campusid\u fk
部分(约束的名称)可能会被省略。非常感谢。正如我所说,“这可能是愚蠢的事情,因为我是制造这些东西的专家。”
alter table members
add constraint members_campusid_fk
foreign key(campusid) references campus(campusid)