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

列の作成後に外部キー制約をリストする必要があります

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 に答える