Ошибка violation of PRIMARY or UNIQUE KEY

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
PoGRom
Сообщения: 3
Зарегистрирован: 18 ноя 2008, 13:52

Ошибка violation of PRIMARY or UNIQUE KEY

Сообщение PoGRom » 19 ноя 2008, 09:00

Добрый день!

Существует база данных на сервере (IB6). К ней конектится клиент и делает синхронизацию (этот процесс заключается в том что клиент из базы на сервере выбирает данные относящиеся только к нему и потом запросами INSERT заливает в свою локальную базу). Так вот, у одного из клиентов в одной таблице стала вылетать ошибка

Код: Выделить всё

violation of PRIMARY or UNIQUE KEY constraint "PK_FCFINCAPT_ID" on table "FACIALFINCAPTION" 

при первом же INSERT в еще пустую таблицу.
В таблицах имеется связь "один-ко-многим": FACIALFINCAPTION.id = FACIALFINDETAIL.RECORDINDEX
т.е. одной записи в FACIALFINCAPTION может соответствовать несколько записей в FACIALFINDETAIL.
Я проверял ссылочную целостность простыми select запросами. "Висящих" ссылок нет ни в одной ни в другой таблице.

Подскажите пожалуйста, как найти причину возникновения данной ошибки.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: Ошибка violation of PRIMARY or UNIQUE KEY

Сообщение kdv » 19 ноя 2008, 09:31

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

PoGRom
Сообщения: 3
Зарегистрирован: 18 ноя 2008, 13:52

Re: Ошибка violation of PRIMARY or UNIQUE KEY

Сообщение PoGRom » 19 ноя 2008, 09:32

б/р сделал, gfix -sweep тоже. Не помогло.

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Re: Ошибка violation of PRIMARY or UNIQUE KEY

Сообщение WildSery » 19 ноя 2008, 11:10

PoGRom писал(а):Существует база данных на сервере (IB6).
В этом случае, остаётся почитать тут об этой версии IB, а затем - бегом в аптеку. За ядом.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: Ошибка violation of PRIMARY or UNIQUE KEY

Сообщение kdv » 19 ноя 2008, 15:33

если даже после b/r такое происходит, то подозреваю, что ошибка классическая - где-то в триггере идет аналогичная вставка в ту же самую таблицу. Т.е. разработчик "перемудрил" с вложенными вызовами триггеров и процедур.

PoGRom
Сообщения: 3
Зарегистрирован: 18 ноя 2008, 13:52

Re: Ошибка violation of PRIMARY or UNIQUE KEY

Сообщение PoGRom » 21 ноя 2008, 09:26

Понятно, спасибо за ответы.
Еще маленькая просьба: посоветуйте пожалуйста софтинку чтобы можно было следить какие выполняются запросы к бд в процессе работы программы.

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Re: Ошибка violation of PRIMARY or UNIQUE KEY

Сообщение WildSery » 21 ноя 2008, 11:10

Если всё плохо, и программа работает с BDE, то в нём есть свой SQL Monitor
В любом другом случае можно купить хорошую тулзу FBScanner

Ответить