Форум: "Базы";
Текущий архив: 2002.08.08;
Скачать: [xml.tar.bz2];
ВнизODAC - использование TOraQuery Найти похожие ветки
← →
P&$ (2002-07-19 13:42) [0]У кого есть опыт работы с ODAC, помогите.
Начал осваивать ODAC, использую TSmartQuery - при удалении/изменении все в порядке,
а вот при вставке новой записи начинаются проблеммы -
в базе есть триггер генерящий ключевое поле обрабатываемой таблицы, а (из документации по ODAC)
TCustomOraQuery при добавлении (если указана KeySEQUENCE и KeyField) генерит запрос вида
select SEQUENCE_for_kod.NextVal into :new.kod from Dual ;
дублируя триггер, в результате значение поля в базе увелич. на 2 а в приложении на 1 - error!
Если удалить триггер все работает, но он нужен для других приложений!
Если не указывать KeySEQUENCE и KeyField то перед Postом значение KeyField не определено
и как его вытащить не знаю. (можа где-то refresh дать, но где?)
Посоветуйте как быть в данном случае и вообще буду благодарен за любые рекомендациипо работе с ODAC
← →
Black Cat (2002-07-19 16:25) [1]
> (можа где-то refresh дать, но где?)
1)Пишешь в SQLRefresh типа:
select * from TABLE_NAME where rowid=:old_rowid
2) в RefreshOption выставляешь roAfterInsert в True
3) В самом SQL выбираешь rowid
Этого хватит при наличии триггера. Удачи!
← →
PSERG (2002-07-19 17:08) [2]Можешь использовать returning в SQL запросе!
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.08.08;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.005 c