campos únicos con problemas de tamaño
Pregunta
Tengo una base de datos mysql y estoy tratando de poner una url y una identificación única en dos campos separados. Una de las URL a veces tiene más de 800 caracteres. Intenté crear un índice ÚNICO de la identificación y la url, de modo que no me vincule al mismo combo url / id más de una vez, pero recibo un error con respecto a la longitud del campo para el índice.
Actualmente estoy almacenando la url como varchar. ¿Debería estar usando el blog? ¿o algo mas? ¿Cómo afectará eso al índice ÚNICO?
Solución
Mantenga la URL en un campo TEXT
, mantenga el hash MD5
de la URL en otra columna y cree un índice único en la columna hash.
Otros consejos
Creo que el límite de tamaño de varchar es 255. Debería cambiar de tipo varchar a texto.