Вниз
Скачать: CL | DM;

Несколько TIBUpdateSQL   Найти похожие ветки 

← →
Pul   (2003-11-26 14:39) [0]

У меня три таблицы в SQL запросе IBQuery: одна master, и две detail. Нужно сделать так, чтобы все поля были редактируемыми.
Кинул три компонента TIBUpdateSQL для каждой таблицы.
Заполнил все SQL у TIBUpdateSQL, и на IBQuery.OnUpdateRecord делаю следующее:
procedure TForm1.IBQuery1UpdateRecord(DataSet: TDataSet;
UpdateKind: TUpdateKind; var UpdateAction: TIBUpdateAction);
begin
IBUpdateSQL1.DataSet := IBQuery1;
IBUpdateSQL1.SetParams(UpdateKind);
IBUpdateSQL1.ExecSQL(UpdateKind);
IBUpdateSQL2.DataSet := IBQuery1;
IBUpdateSQL2.SetParams(UpdateKind);
IBUpdateSQL2.ExecSQL(UpdateKind);
IBUpdateSQL3.DataSet := IBQuery1;
IBUpdateSQL3.SetParams(UpdateKind);
IBUpdateSQL3.ExecSQL(UpdateKind);
UpdateAction := uaApplied;
end;

При выполнении ExecSQL для таблицы с редактируемым полем все нормально, а в других - возникает ошибка "Update failed".
Подскажите как правильно поступать в таких ситуациях.


← →
Vemer ©   (2003-11-26 14:45) [1]

А если просто ApplyUpdate для всей троицы вызывать? Можно еще попробовать раздельное редактирование, а потом присоедитять по одной для отлова момента, когда ошибка возникает.
Еще вариант - неправильно ключевое поле(поля) где-то указано в UpdateSQL.


← →
Pul   (2003-11-26 14:49) [2]

>Vemer © (26.11.03 14:45) [1]
ApplyUpdates - метод TIBQuery, а он у меня один.
О какой троице идет речь?


← →
Pul   (2003-11-26 15:05) [3]

Народ, что никто не сталкивался с этим?
НЕ ВЕРЮ!!!


← →
Vemer ©   (2003-11-26 18:47) [4]

Сорри, не совсем въехал в вопрос.
А в UpdateSQL у тебя для всех 3-х таблиц SQL сгенерен правильно(Там выпадающее меню есть с названиями таблиц)?
Возможно ли заменить подчиненные таблицы Lookup-полями, тогда в UpdateSQL 1 таблица будет и все нормально.


← →
Zacho ©   (2003-11-26 19:00) [5]


> Pul (26.11.03 15:05) [3]

ВОт я, например, не сталкивался поскольку принципиально не пользуюсь TIBQuery и другим не советую :-)


← →
Vemer ©   (2003-11-26 19:13) [6]

TO Zacho>
А можно об альтернативах поподробнее вкратце :)? Нет, правда интересно. Я например недавно перелез с IB_Table на IB_Query, так и не разобравшись с фильтрами :).


← →
Zacho ©   (2003-11-26 19:36) [7]


> Vemer © (26.11.03 19:13) [6]

TIBDataSet. И никакие TIBTable и TIBQuery нафиг не нужны, они вообще-то были задуманы в основном для упрощения перевода старых проектов с BDE на IBX, или наоборот, если в будующем предпологается переход на другие компоненты доступа к БД, сходные с BDE.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
8-62166
Winni
2003-08-12 15:53
2003.12.19
Как регулировать громкость, если используется TMediaPlayer ?


1-62144
NONAME
2003-12-07 18:40
2003.12.19
Подскажите! Rак сделать некоторый SCORE.dat файл с не читаемой в


6-62187
Xlam
2003-10-22 23:44
2003.12.19
? примеры использования TIdTCPClient и TIdTCPServer


3-61962
Unk
2003-11-26 13:20
2003.12.19
DBGrid


6-62172
Alibaba
2003-10-23 15:32
2003.12.19
Сообщение на другой комп




   Наверх