FOREIGN KEYの追加について。
FOREIGN KEYの追加について。
MySQL5.1.37
CREATE TABLE `goods` (
`id` int NOT NULL AUTO_INCREMENT,
`num` int NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
index (`num`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `sales` (
`id` int NOT NULL AUTO_INCREMENT,
`num` int NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
index (`num`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
上記のようなテーブルを作り、salesテーブルにCSVファイルからデータをインポートしたのち、FOREIGN KEYを子テーブルに追加したいのですが、下記のようなエラーになります。
ALTER TABLE `sales` ADD FOREIGN KEY ( `num` ) REFERENCES `test`.`goods` (
`num`
) ON UPDATE CASCADE ;
MySQLのメッセージ: ドキュメント
#1452 - Cannot add or update a child row: a foreign key constraint fails (`test`.`#sql-561_cf`, CONSTRAINT `#sql-561_cf_ibfk_1` FOREIGN KEY (`num`) REFERENCES `goods` (`num`) ON UPDATE CASCADE)
データをインポートしたのちにFOREIGN KEYを追加するにはどのようにしたらいいのでしょうか?