Uw code en schema zijn in orde. U probeert waarschijnlijk de vorige versie van de tabel.
http://sqlfiddle.com/#!2/9dc64/1/0
Je tafel heeft zelfs geen UNIEK, dus die fout is onmogelijk op die tafel.
Maak een back-up van gegevens uit die tabel, laat ze vallen en maak ze opnieuw.
Misschien heb je geprobeerd die CREATE TABLE IF NOT EXIST
. Het is niet gemaakt, je hebt een oude versie, maar er is geen fout opgetreden vanwege IF NOT EXIST
.
U kunt SQL als volgt uitvoeren om de huidige tabelstructuur te zien:
DESCRIBE my_table;
Bewerken - later toegevoegd:
Probeer dit uit te voeren:
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;