Duplicate entry '127' for key 1

Haz una pregunta
Si al intentar ingresar un dato en una tabla de una base de datos MySQL obtienes el siguiente mensaje de error:

Duplicate entry '127' for key 1


Esto probablemente se deba a que la clave primaria de la tabla es de tipo TINYINT.
El tamaño asignado a un campo TINYINT no es mayor a 1 byte. Sin importar el número que pongas entre paréntesis para el tipo TINYINT. Por lo tanto los valores soportados por los enteros de tipo TINYINT no pueden ser mayores a 127 ó 255, dependiendo de que sea con signo o sin signo. Una tabla con un campo autoincrmentable no soporta valores mayores a 127 ó 255. Debido a esto aparece el mensaje de error.

Para solucionar este problema, si debes elegir un tipo numérico para una clave primaria, elige de preferencia el tipo INT que puede soportar enteros con una capacidad máxima del orden de los 2 a 4 miles de millones.

Artículos de interés


http://dev.mysql.com/doc/refman/5.1/en/numeric-types.html
Jean-François Pillou

Nuestros contenidos son redactados en colaboración con expertos del ámbito tecnológico bajo la dirección de Jean-François Pillou, fundador de CCM.net y director digital en el Grupo Figaro. CCM es un sitio de tecnología líder a nivel internacional y está disponible en 11 idiomas.

Más información sobre el equipo de CCM