Не могу написать; дубликат ключа в таблице при обновлении схемы

0

У меня есть этот код:

$con = $this->em->getConnection();
$query = sprintf(
   "ALTER TABLE client RENAME client_%s;
    ALTER TABLE client_deduplicate RENAME client;
    ALTER TABLE client DROP FOREIGN KEY rem_id;",
date('Ymd'),
date('Ymd')
);
$con->executeQuery($query);

Когда я попытался выполнить doctrine:schema:update --force ошибка:

An exception occurred while executing 'ALTER TABLE client ADD CONSTRAIN  
T FK_D99D49C4CDEADB2A FOREIGN KEY (rem_id) REFERENCES rem (id)':
SQLSTATE[23000]: Integrity constraint violation: 1022 Can't write;duplicate key 
in table '#sql-1_54'

Пожалуйста, помогите мне. спасибо заранее.

Теги:
doctrine2
symfony-2.1

1 ответ

0

Сначала откройте свой внешний ключ.

Ваш внешний ключ привязан к существующей таблице client, поэтому вы не можете переименовать его, если существует внешний ключ.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню