![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TDataSet [D7, XP]
Platto © (2008-12-08 23:24:00)Добрый вечер, не пойму как обновить набор данный в этом компоненте
(TIBDataSet),
Ну на примере: сделал insert на одном компьютере и увидел сразу изменения(у себя), а на другой машине при клике на кнопку "обновить",
тоже должны быть видны изменения.
Через IBQuery все нормально, А IBDataSet не хочет, кеширует что-ли?
подскажите как сделать.
Anatoly Podgoretsky (2008-12-09 10:20:00) [1]Нет ли у TIBDataSet CachedUpdates?
MsGuns (2008-12-09 10:13:00) [2]ExecSQL, вероятно, пишет в базу, а читает квери или датасет.
Каким образом вносятся изменения в таблицу БД через TIBDataSet ?
По сабжу: проверь уровень изоляции транзакции, в контекстке которой работает датасет
Сергей М. (2008-12-09 08:59:00) [3]
> IBQuery .. делаеш селект
> просто ExecSQL
Что за бред ?
С каких это пор ExecSQL работает с селективными запросами ?
Sergey13 (2008-12-09 08:43:00) [4]> [2] Platto (09.12.08 00:51)
Ну и используй свой волшебный IBQuery, который непонятно (для тебя) почему работает. Или разбирайся с транзакциями, что в любом случае полезно.
Platto (2008-12-09 00:51:00) [5]
> пусть аналогичным компонентом
IBQuery - закрываеш, делаеш селект, открываеш и все "видно" даже можно
не делать комит просто ExecSQL, а DataSet после commit и открытия,
не хотит показывать обновление на другой машине, только когда полностью
перезапустить программу?
Loginov Dmitry (2008-12-08 23:59:00) [6]Чтение и изменение данных в Interbase происходит в рамках транзакций. Для того чтобы компонент IBDataSet, связанный с транзакцией А увидел изменения, сделанные, пусть аналогичным компонентом, в транзакции Б, необходимо подтвердить транзакцию Б и переоткрыть набор данных IBDataSet из транзакции А. Количество компьютеров здесь абсолютно непричем.