Страница 1 из 1

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

Добавлено: 19 ноя 2008, 09:00
PoGRom
Добрый день!

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

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

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

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

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

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

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

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

Добавлено: 19 ноя 2008, 09:32
PoGRom
б/р сделал, gfix -sweep тоже. Не помогло.

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

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

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

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

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

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

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

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