0

我正在尝试创建一个表,但我遇到了问题,foreign key 这是我尝试过的脚本:

CREATE TABLE IF NOT EXISTS note_etudiant(
    num_insc int auto_increment,
    cin int foreign key references T_utilisateur(cin),
    nom varchar(25),
    note float
)Engine=InnoDB DEFAULT CHARSET=latin1;

这是我得到的错误:

1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 3 行的“外键引用 T_utilisateur(cin), nom varchar(25), no”附近使用正确的语法

4

2 回答 2

0

You need to list your foreign key constraint after your column creation

cin int,
constraint foreign key (cin) references T_utilisateur(cin),
于 2013-03-11T21:16:57.057 回答
0

您需要与列分开创建外键。我还建议单独创建索引,以便您可以控制索引的名称。

尝试这样的事情:

CREATE TABLE IF NOT EXISTS note_etudiant(
    num_insc int auto_increment,
    cin int,
    nom varchar(25),
    note float,
    primary key (num_insc),
    key cin (cin),
    constraint fk_note_etudiant_to_t_utilisateur foreign key (cin) references T_utilisateur(cin)
)Engine=InnoDB DEFAULT CHARSET=latin1;
于 2013-03-11T21:18:03.260 回答