Su código y esquema están bien. Probablemente estés probando una versión anterior de la tabla.
http://sqlfiddle.com/#!2/9dc64/1/0
Su tabla ni siquiera tiene ÚNICO, por lo que ese error es imposible en esa tabla.
Haga una copia de seguridad de los datos de esa tabla, suéltelos y vuelva a crearlos.
Tal vez intentaste ejecutar CREATE TABLE IF NOT EXIST
. No se creó, tiene una versión anterior, pero no hubo ningún error debido a IF NOT EXIST
.
Puede ejecutar SQL como este para ver la estructura de la tabla actual:
DESCRIBE my_table;
Editar - añadido más tarde:
Intenta ejecutar esto:
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;