Creando una tabla en la que necesito que un campo sea unico, es decir que sus datos no sean igual en otros registros, llevo poco con php y mysql y normalmente a los campos que quería que fuesen unicos los definia con PRIMERY KEY y funcionaban bien, el problema es que ahora necesito que otro campo tambien sea unico y lo definido con UNIQUE('nombre del campo'), se crea correctamente pero no se porque deja ingresar datos identicos en diferentes registros, alguien me puede explicar que hago mal??? o si es que estoy equivocado y UNIQUE no sirve para que el contenido de un campo en la tabla sea unico.., weno a continuación pego el code para que lo veáis más claro.
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 (`nombre`),
PRIMARY KEY (`ID`)
) TYPE=MyISAM;