Estoy tonto xdd, si que funcionaba lo que pasa que me había equivocado en el campo en vez de usuario habia puesto UNIQUE (`nombre`) como se puede observar en mi anterior post, ahora tengo otra duda he visto en algunos manuales por ejemplo en
http://www.rinconastur.com/php/php68.php , que exactamente esto ->>
UNIQUE (nombre campo) define un índice único para el campo especificado. Evidentemente, si es único solo puede definirse para un campo y obviamente también el campo debe estar definido.
Pará definir un campo como único no puede tener asignado NOT NULL.
Un campo al que se ha asignado un índice UNIQUE NO ADMITE VALORES IDENTÍCOS en dos registros distintos de la tabla.
la cuestión es que he creado en campo con NOT NULL y despues lo he definido como UNIQUE y no me ha dado error y parece que funciona..., a que se debe esto???
El code que he utilizado es este:
Código PHP:
CREATE TABLE `usuarios` (
`ID` int(5) unsigned NOT NULL auto_increment,
`usuario` varchar(255) NOT NULL default '',
`password` varchar(255) NOT NULL default '',
`correo` varchar(255) NOT NULL default '',
`nombre` varchar(255) default NULL,
UNIQUE (`usuario`),
PRIMARY KEY (`ID`)
) TYPE=MyISAM;
Un saludo.