SQL-импорт стороннего поставщика останавливается при импорте SQL-файла с ошибкой: # 1068 - определено несколько первичных ключей - PullRequest
0 голосов
/ 02 августа 2009

У меня есть стороннее программное обеспечение, и я экспортировал структуру базы данных, чтобы я мог импортировать ее на другой компьютер. Я предполагаю, что несколько таблиц имеют несколько первичных ключей, но как я могу импортировать таблицы без mysql, останавливая импорт, потому что он обнаружил несколько первичных ключей?

это ошибка, которую я получаю:
1068 - определено несколько первичных ключей

Я определил это в файл sql.

SET FOREIGN_KEY_CHECKS = 0;
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";

и импорт все еще останавливается при импорте, когда он обнаруживает несколько первичных ключей.
Есть ли что-нибудь еще, что я могу сделать ??

спасибо

1 Ответ

1 голос
/ 02 августа 2009

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

Я бы проверил, какие операторы create table или alter table вы используете, и убедился, что все они создают один первичный ключ.

Я предполагаю, что это программное обеспечение берет первичный ключ с несколькими атрибутами и пытается создать первичный ключ для каждого из атрибутов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...