何日も頭を悩ませていることを聞きたいのですが...
これが私が意味することです:
次の 2 つのテーブルを作成します。
CREATE TABLE IF NOT EXISTS journal (
issn varchar(20) NOT NULL,
j_title varchar(100) NOT NULL,
j_publisher varchar(30) NOT NULL,
PRIMARY KEY (issn)
) ENGINE=InnoDB;
CREATE TABLE IF NOT EXISTS volume (
volume_no int(11) NOT NULL,
issn varchar(20) NOT NULL,
year int(11) NOT NULL,
PRIMARY KEY (issn,volume_no),
FOREIGN KEY (issn) REFERENCES journal(issn)
) ENGINE=InnoDB;
これを作成しようとすると:
CREATE TABLE IF NOT EXISTS issue (
issue_no int(11) NOT NULL,
issue_pages varchar(10) NOT NULL,
issue_date varchar(10) NOT NULL,
issn varchar(20) NOT NULL,
volume_no int(11) NOT NULL,
PRIMARY KEY (issue_no,issn,volume_no),
FOREIGN KEY (issn) REFERENCES journal(issn),
FOREIGN KEY (volume_no) REFERENCES volume(volume_no)
) ENGINE=InnoDB;
エラーがスローされます (errno 150)
エラーは外部キー volume_no にあります。
それなしFOREIGN KEY (volume_no) REFERENCES volume(volume_no)
テーブルは問題なく作成されています....何が起こっているのか説明できません...何度も何度も見ましたが、何もありません!! 何が起こっているのか知っている人はいますか?
前もって感謝します!!