Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 12.05.2011, 09:05
Svetkin Svetkin вне форума
Прохожий
 
Регистрация: 02.06.2010
Сообщения: 8
Репутация: 10
По умолчанию Нарушается ссылочная целостность

Добрый день!!!!
Нужна помощь.....

Есть база данных Access, в ней реализован контроль ссылочной целостности. В ней же есть запрос из трех связанных таблиц.

Достается в DevExpress при помощи ADODataSet. После добавления данных и попытки сохранить выкидывает ошибку нет ссылки на таблицу.

01.jpg

Хотя если открыть этот же запрос в Access и ввести теже данные все сработает....

В чем ошибка, подскажите!!!!! пжт!!!!
Ответить с цитированием
  #2  
Старый 12.05.2011, 10:34
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Запрос с параметрами? В дебагере проверял что именно передаешь в параметры? Может, для начала, покажешь запрос и код где его выполняешь?
Ответить с цитированием
  #3  
Старый 12.05.2011, 11:38
Svetkin Svetkin вне форума
Прохожий
 
Регистрация: 02.06.2010
Сообщения: 8
Репутация: 10
По умолчанию

Вот собственно сам запрос, без всяких параметров

Код:
SELECT Клемник.TERMINAL, Клемник.REF_SOURCE, Жилы.REF_TYPE_THREAD, Жилы.MARK_ELECTRIC, Жилы.REF_CABLE, [Типы жил].ID_TYPE_THREADS, Клемник.ID_TERMINAL, Жилы.ID_THREAD, Жилы.REF_TERMINAL
FROM [Типы жил] INNER JOIN (Клемник INNER JOIN Жилы ON Клемник.ID_TERMINAL = Жилы.REF_TERMINAL) ON [Типы жил].ID_TYPE_THREADS = Жилы.REF_TYPE_THREAD

Кода нет, я просто загнал данные в грид от DevExpress и черезнего ввожу данные при переходе на другую строчку = применение изменений выдает ошибку...

Последний раз редактировалось Svetkin, 12.05.2011 в 11:46.
Ответить с цитированием
  #4  
Старый 12.05.2011, 15:32
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Загонять данные через грид- ни есть хорошая идея. Скорее всего где- то теряется ключевое поле. Давай точный текст ошибки- можно будет судить о том, что именно и где теряется. Добавляй данные в отдельном "модуле"- и будет счастье.
Ответить с цитированием
  #5  
Старый 16.05.2011, 10:15
Svetkin Svetkin вне форума
Прохожий
 
Регистрация: 02.06.2010
Сообщения: 8
Репутация: 10
По умолчанию

Вот собственно как ругается Дельфа

Цитата:
Project Connection.exe raised exception class EOleException with message 'Невозможно добавление или изменение записи. Для обеспечения целостности данных необходимо наличие связанной записи в таблице 'Клемник''.
Ответить с цитированием
  #6  
Старый 16.05.2011, 10:21
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Вы пытаетесь добавтить запись со ссылкой на несуществующую запись из таблицы Клемник. Сначала добавьте нужные записи в Клемник, а потом в основную табл.
Ответить с цитированием
  #7  
Старый 16.05.2011, 12:57
Svetkin Svetkin вне форума
Прохожий
 
Регистрация: 02.06.2010
Сообщения: 8
Репутация: 10
По умолчанию

В первом посте, картинка запроса со связями, который создан в Access.

В него входит таблица Клемник, кроме того если я открываю его непосредственно в Access и добавляю данные все проходит.

В дельфи я просто через датасет и датасурс потключаю этот же запрос к гриду и идет ошибка...
Ответить с цитированием
  #8  
Старый 16.05.2011, 13:44
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Без иходного кода, все высказывания- это гадание на кофейной гуще.
Ответить с цитированием
  #9  
Старый 16.05.2011, 14:17
Svetkin Svetkin вне форума
Прохожий
 
Регистрация: 02.06.2010
Сообщения: 8
Репутация: 10
По умолчанию

Чей исходный код???? компонента???? мой????

если мой, то его просто нет, пока еще стадия визуального программирования, таскаю компоненты да настраиваю...
Ответить с цитированием
  #10  
Старый 17.05.2011, 09:47
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Я еще раз повторяю- вы пытаетесь записать в таблицу ссылку на несуществующую запись. Как и что вы там делаете- извесно только вам одному, остальным же приходится только догадываться. Нет исходного кода- опишите подробно что именно вы пытаетесь сохранить, в какой грид, к какому датасету он подключен, тогда станет всем более понятно почему происходит эта ошибка.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:36.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter