• 締切
  • すぐに回答を!

FOREIGN KEYの追加について。

  • 質問No.5678739
  • 閲覧数1260
  • ありがとう数4
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 0% (0/1)

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を追加するにはどのようにしたらいいのでしょうか?

回答 (全1件)

  • 回答No.1

ベストアンサー率 51% (3827/7415)

>REFERENCES `test`.`goods`

のところを

REFERENCES `goods`

としてみては?
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ