![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Почему не происходит кэширование в UpdateSQL? [D6, dBase, FoxPro]
DimonS © (2005-09-12 02:42:00)Стандартный набор - Querry + UpdateSQL. Настроены вроде нормально. При записи в БД из нескольких едитов происходит сразу физическая запись в БД. Код:
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('Insert Into '+t1+'(data,IndTTN,Index_P,Tabel,Tabel1,Park,Nomer,Chas,Kol_TTN,Mash_Dny)');
Query1.SQL.Add('Values ("'+MaskEdit1.Text+'.'+IntToStr(god)+'","'+Edit2.Text+'",'+inttostr(Ntt)+','+MaskEdit3.Text+',"'+MaskEdit10.Text+'",'+Ma skEdit7.Text+',"'+MaskEdit4.Text+'","'+FloatToStr(Ch)+'",'+MaskEdit2.Text+',0)');
Query1.ExecSQL;
Почему так? Нужна запись в кэш для возможности последующей отмены. В связке с DBGrid-ом это работает нормально.
Ильш (2005-09-12 07:20:00) [1]и еще вот это твое
> Настроены вроде нормально
очень настораживает... вот именно что вроде нормально
ты уж тогда приводи все полностью и все что там у тебя настроено и какие запросы написаны
Ильш (2005-09-12 07:19:00) [2]а что правильно написать?
по любому если пишешь в запросе сразу Insert у тебя и будет сразу он отрабатывать. кэширование пролетает мимо
по F1 вроде все понятно написано
просто если хошь типа отменять изменения
то значения передавай в запрос параметрами
в Query
select * from table
а в UpdateSQL в секции Inserta
insert into table
(data, tarlivali, tdtp)
values (:data, :tarlivali, :tdtp)
и потом уже
Query.ParamByName('data').AsInteger=MaskEdit1.Text;
ну и т.д.
записываешь это все с помощью ApplyUpdates
DimonS (2005-09-12 06:35:00) [3]Ну а как правильно написать то? Ну только изучаю запросы, а литературы нет толком.
Ильш (2005-09-12 06:13:00) [4]это что за финты ушами???!!!
в Query должен быть select запрос, а в у вас что? есесенно происходит запись сразу!