![]() |
|
![]() ![]() ![]() |
|
KiSH333 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 14.8.2008 Репутация: 0 Всего: 0 |
Привет всем! у меня возникла проблема с синхронизацией БД!
при синхр вылетает ошибка violation of FOREIGN KEY constraint "RELATIONOSWITHGU" т.к. это DLLка то тестировать оч трудно, подскажите на что может это ругаться, просто не пойму в каком направлении рыть. |
|||
|
||||
Frees |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2233 Регистрация: 2.12.2005 Где: Екатеринбург Репутация: 23 Всего: 54 |
а в чем проблема? укажи приложение которое ее грузит и отлаживай как обычно Добавлено через 1 минуту и 31 секунду Run -> parametrs -> Host Application -------------------- Кольцов Виктор Владимирович |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
Если ты используешь, так сказать, таблицы- справочники, то тебе в первую очередь нужно сделать так, чтобы заполнялись они, а потом уж и главные таблицы. Т.е. смотри, какая у тебя привязка по внешним ключам, в таком порядке и добавляй данные в таблицы. А то ты в главную таблицу добавляешь запись, которая ссылается на запись в другой таблице, а в другой таблице пока что такой записи нет. Добавлено через 8 минут и 42 секунды Ссылочная целостность |
|||
|
||||
KiSH333 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 14.8.2008 Репутация: 0 Всего: 0 |
Akella, спс за коммент... начал смотреть что к чему и нарушения целостности чет не могу найти!
![]() Есть вторая база, основная которая синхронизируется с другой. В основной также в табличке ОS я добавил новую запись, ни как она условиям не противоречит но сейчас не идет синхронизация. Ошибку я писал выше violation of FOREIGN KEY constraint "RELATION OS WITH GU" Так же выше привел зависимость OS от GU, посмотрел тоже вроди условиям не противоречит. Добавил даже в ручную, точно такую же запись в нее, но все равно тоже самое! вот такая вот беда)) Это сообщение отредактировал(а) KiSH333 - 18.2.2009, 12:04 |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
Зачем её искать? Ссылочную целостность обеспечивает твой внешний ключ "RELATIONOSWITHGU". Вот поэтому-то сервак тебя и пинает за то, что НЕТ ССЫЛКИ записи из главной таблицы на запись в подчинённую таблицу. Ты так и не понял. Прочти внимательно и несколько раз опять моё сообщение.
|
|||
|
||||
Akella |
|
||||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
Смотри, допустим есть 2 таблицы: главная и подчинённая.
Главная: ID, Name, id_detail Подчинённая: ID, Name есть между ними внешний ключ по полям: id(подчинённая) и id_detail(главная). Такая вот связь, внешний ключ, ссылочная целостность. Допустим, что в подчинённой есть 2 записи:
теперь ты вставляешь запись в главную
Обрати внимание на 12!!! Если выполнить такой код, то у тебя получится, что ты будешь вставлять запись с ID_DETAIL= 12, а записи с ID = 12 в подчинённой таблице нет, не на что ссылаться. Понимаешь о чём я? Добавлено через 2 минуты и 42 секунды Т.е., чтобы не было у тебя ошибки, перед добавлением записи в главную таблицу, тебе нужно добавить запись с ID = 12 в подчинённую
Это сообщение отредактировал(а) Akella - 19.2.2009, 01:05 |
||||||
|
|||||||
KiSH333 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 14.8.2008 Репутация: 0 Всего: 0 |
Akella, это что ж получается, что я в главную таблицу не могу добавить запись, даже если в подчиненной пока что нет ни чего???
Т.е. из твоего примера, когда ты добавляешь Должность "Менеджеров", грубо говоря, я не могу добавить сегодня, когда штат будет формироваться через месяц к примеру? Я думал что если в дочерней нет записей пока, ее смело можно добавлять сразу в главную? |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
давляй с id_detail = null
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Базы данных и репортинг" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |