Din kod och ditt schema är OK. Du försöker förmodligen med tidigare version av tabellen.
http://sqlfiddle.com/#!2/9dc64/1/0
Din tabell har till och med ingen UNIK, så det felet är omöjligt på den tabellen.
Säkerhetskopiera data från den tabellen, släpp den och återskapa.
Du kanske försökte köra den CREATE TABLE IF NOT EXIST
. Den skapades inte, du har en gammal version, men det var inget fel på grund av IF NOT EXIST
.
Du kan köra SQL så här för att se aktuell tabellstruktur:
DESCRIBE my_table;
Redigera - läggs till senare:
Försök att köra detta:
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;