Вниз
Скачать: 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.012 c
3-61947
Pul
2003-11-26 14:39
2003.12.19
Несколько TIBUpdateSQL


1-61997
zedich
2003-12-09 15:58
2003.12.19
Дерево объектов


1-62115
Донской
2003-12-04 10:36
2003.12.19
Ошибка -


1-62085
Riptor
2003-12-08 11:49
2003.12.19
Тестирование с помощью пакета qtest


3-61901
Olga_Oo
2003-11-27 13:40
2003.12.19
Qreport




   Наверх