我有一个以course
列命名的表
courseid
coursename
我有subject
列的表
sub_id
sub_name
我想在我的主题表上定义一个外键。
这是我的 SQL 代码
ALTER TABLE subject
ADD FOREIGN KEY (courseid)
REFERENCES course(courseid);
这是我得到的错误:
表中不存在键列“courseid”**
首先在表中添加courseid
列subject
尝试这个:
ALTER TABLE subject
ADD courseid varchar(100);
ALTER TABLE subject
ADD FOREIGN KEY (courseid)
REFERENCES course (courseid);
ALTER TABLE subject ADD FOREIGN KEY (courseid)
REFERENCES course (courseid)
ON DELETE CASCADE ON UPDATE CASCADE
确保你的两个表结构都在 innodb 中,并且关系字段都被索引
尝试这样的事情:
已编辑
ALTER TABLE subject ADD courseid varchar(10);
ALTER TABLE subject ADD Constraint
FOREIGN KEY(courseid) REFERENCES course(courseid);
请更改数据类型,其长度取决于主键。