3

これを試してみると

ALTER TABLE Comp_Entry
ADD FOREIGN KEY(CompetitionID) REFERENCES Comp__Competition(CompetitionID)

このエラーが発生します

#1005 - Can't create table 'chris_db.#sql-1464b_66' (errno: 150) (<a href="server_engines.php?engine=InnoDB&amp;page=Status&amp;token=7a7f690fbd1413e74979d79fa9044fb0">Details...</a>)

Comp_CompetitionのテーブルはCompetitionID主キーとして設定されています。この問題に精通している人はいますか?

4

2 に答える 2

0

Comp_Entry テーブルには、CompetitionID の既存のインデックスが必要です。また、コマンドには__テーブル Comp__Competition の名前に二重文字が含まれていますが、説明には1つしかありません。どちらが正しいですか?

于 2011-03-24T04:05:24.540 に答える
0

テーブルに制約に適合しないデータがあるため (たとえば、存在しないキー)

作ってみてください

     select * from Comp_Entry where CompetitionID not in 
        (select distinct CompetitionID from Comp__Competition)
于 2011-03-24T04:08:20.567 に答える