Как обработать эту ошибку повторяющейся записи MySQL после запуска Rails-миграции? - PullRequest
1 голос
/ 02 июня 2010

Я получаю следующую ошибку при попытке запустить эту миграцию:

==  AddUniquenessConstraintOnAwards: migrating ================================
-- add_index(:awards, [:badge_id, :game_week_id], {:unique=>true, :name=>:game_badge_index})
rake aborted!
An error has occurred, all later migrations canceled:

Mysql::Error: Duplicate entry '35-8192' for key 'game_badge_index': CREATE UNIQUE INDEX `game_badge_index` ON `awards` (`badge_id`, `game_week_id`)

Кто-нибудь сталкивался? Что за ошибка говорит мне? Как вы устранили неполадки и в конечном итоге это исправить?

1 Ответ

4 голосов
/ 02 июня 2010

Ошибка говорит о том, что в таблице наград есть как минимум две записи, которые имеют одинаковые значения для badge_id и game_week_id (запись 35-8192), и такие повторяющиеся записи не разрешены для уникального индекса

Чтобы исправить это, вы удалите дубликаты записей

...