そのため、過去2日間ほぼ調べましたが、mysqlで外部キーを追加できないのは何なのかわかりません。外部キーを含む 2 番目のテーブルのコードを実行すると、次のエラーが発生します。
#1072 - キー列 'album' がテーブルに存在しません
コードを数回修正したため、コードに構文エラーはないと確信しています。
以前に stakOVF で同じ質問を見たことがありますが、これらの質問の問題は非常に明白な構文エラーでしたが、これらの質問の解決策はどれも私の問題に関連していませんでした。
したがって、これが私が実行していて、上記のエラーが返されるコードです。前もって感謝します。
CREATE TABLE ‘Album’(
‘id’ INT AUTO_INCREMENT PRIMARY KEY ,
‘name’ VARCHAR( 35 ) NOT NULL
) ENGINE = InnoDB;
上記のコードは問題なく実行されますが、以下のコードを実行するとエラーが発生します
CREATE TABLE ‘Picture’(
‘id_pk’ INT AUTO_INCREMENT PRIMARY KEY ,
‘album’ INT,
‘pictureURL’ VARCHAR( 270 ) NOT NULL ,
‘name’ VARCHAR( 35 ) NOT NULL ,
CONSTRAINT album_fk FOREIGN KEY ( album ) REFERENCES Album( id )
) ENGINE = InnoDB;
CONSTRAINT 行をいじりましたが、次の形式の FOREIGN KEY (album) REFERENCES Album(id) でもありました。つまり、制約が前に追加されていません。
ありがとうございます。構文エラーがありましたが、面白い引用符に関係していると言う人もいましたが、それらを削除すると、魅力のように機能します。どうもありがとう!