ここに私のテーブルがあります:
CREATE TABLE `alums_alumphoto` (
`id` int(11) NOT NULL auto_increment,
`alum_id` int(11) NOT NULL,
`photo_id` int(11) default NULL,
`media_id` int(11) default NULL,
`updated` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `alums_alumphoto_alum_id` (`alum_id`),
KEY `alums_alumphoto_photo_id` (`photo_id`),
KEY `alums_alumphoto_media_id` (`media_id`),
CONSTRAINT `alums_alumphoto_ibfk_1` FOREIGN KEY (`media_id`) REFERENCES `media_mediaitem` (`id`),
CONSTRAINT `alum_id_refs_id_706915ea` FOREIGN KEY (`alum_id`) REFERENCES `alums_alum` (`id`),
CONSTRAINT `photo_id_refs_id_63282119` FOREIGN KEY (`photo_id`) REFERENCES `media_mediaitem` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=63 DEFAULT CHARSET=utf8
列を削除したいのですがphoto_id
、おそらく外部キー制約とインデックスも削除する必要があります。
問題は、列を削除しようとするとエラーが発生することです。
エラー 1025 (HY000): '.\dbname\#sql-670_c5c' から '.\dbname\alums_alumphoto' への名前変更エラー (errno: 150)
...インデックスを削除しようとすると(上記と同じ)、外部キー制約を削除しようとすると:
エラー 1091 (42000): 'photo_id_refs_id_63282119' を削除できません。列/キーが存在することを確認してください)
これらすべてをどの順序で行う必要がありますか?どの正確なコマンドを使用する必要がありますか?