表格中不存在关键列'courseid'

时间:2013-09-03 05:59:09

标签: mysql sql

我有一个名为course的表格,其中包含

courseid
coursename

我的表格subject包含

sub_id
sub_name

我想在我的主题表上定义一个外键。

这是我的SQL代码

ALTER TABLE subject 
ADD FOREIGN KEY (courseid) 
REFERENCES course(courseid);

这是我得到的错误:

  

表**

中不存在键列'courseid'

3 个答案:

答案 0 :(得分:1)

首先在courseid

中添加subject

试试这个:

ALTER TABLE subject
ADD courseid varchar(100);

ALTER TABLE subject
ADD FOREIGN KEY (courseid)
REFERENCES course (courseid);

答案 1 :(得分:1)

ALTER TABLE subject ADD FOREIGN KEY (courseid) 
REFERENCES course (courseid) 
ON DELETE CASCADE ON UPDATE CASCADE 

确保ur表结构都在innodb中,关系字段是索引的

答案 2 :(得分:0)

尝试这样的事情:

<强> EDITED

ALTER TABLE subject ADD courseid varchar(10);
ALTER TABLE subject ADD Constraint 
FOREIGN KEY(courseid) REFERENCES course(courseid);

请更改数据类型,其长度取决于主键。