コードとスキーマはOKです。以前のバージョンのテーブルを試している可能性があります。
http://sqlfiddle.com/#!2/9dc64/1/0
テーブルにはUNIQUEがないため、そのテーブルでエラーが発生することはありません。
そのテーブルからデータをバックアップし、ドロップして再作成します。
そのCREATE TABLE IF NOT EXIST
を実行しようとした可能性があります 。作成されていません。古いバージョンがありますが、IF NOT EXIST
が原因でエラーは発生しませんでした。 。
次のようにSQLを実行して、現在のテーブル構造を確認できます。
DESCRIBE my_table;
編集-後で追加:
これを実行してみてください:
DROP TABLE `my_table`; --make backup - it deletes table
CREATE TABLE `my_table` (
`number` int(11) NOT NULL,
`name` varchar(50) NOT NULL,
`money` int(11) NOT NULL,
PRIMARY KEY (`number`,`name`),
UNIQUE (`number`, `name`) --added unique on 2 rows
) ENGINE=MyISAM;