2010-11-16 9 views
8

Tratando de ejecutar esta declaración en una migración de los carriles para generar una columna de varios única restricción/index:Crear múltiples columna de índice diferenciado utilizando MySQL con la migración rieles

add_index :contributors, [:project_id, :user_id], :unique=>true 

También he intentado proporcionar una opción: nombrar a el método, pero aún obteniendo el error. No hay claves existentes en esta tabla

Mysql::Error: Duplicate entry '5-9' for key 'distinct_user_and_project': CREATE UNIQUE INDEX `distinct_user_and_project` ON `contributors` (`project_id`, `user_id`) 

¿Cómo se crea este corto de la utilización de ejecutar y SQL recta? Gracias.

Respuesta

5

Su claridad en el error (Duplicate entry '5-9') que sus datos no es única por lo que no se puede agregar dicho índice no

+0

uh, sí ... ;-) Gracias; Ni siquiera había considerado eso y, efectivamente, eso fue todo. – wkhatch

Cuestiones relacionadas