![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как правильно отобразить изменения в таблице [D5, D6, D7, dBase, FoxPro, Paradox]
snip13 © (2006-08-03 12:10:00)К примеру, с помощью Query выбираются данные из таблицы и отображаются в DBGrid. Если в таблице сделать изменения (insert/update), то они не отображаются в DBGrid пока запрос не сделаешь Query.Close Query.Open. Но это занимает много времени. Подскажите пожалуйста более преемлимые способы обновить DBGrid.
Sergey13 (2006-08-03 15:21:00) [1]> [13] snip13 © (03.08.06 15:13)
> Если бы приложение состояло только из Form+Query+DataSource+UpdateSQL+DBG
> rid, то спрашивать совета я бы не стал. Если что-нить найду
> рабочее обязательно отпишусь.
Я тебе дал абсолютно рабочий (стандартный, описанный в документации и хелпе) совет. Не хочешь - дело твое.
snip13 (2006-08-03 15:13:00) [2]
> Похоже надо книжку прочитать.
Если бы приложение состояло только из Form+Query+DataSource+UpdateSQL+DBGrid, то спрашивать совета я бы не стал. Если что-нить найду рабочее обязательно отпишусь.
Sergey13 (2006-08-03 15:06:00) [3]> [11] snip13 © (03.08.06 14:59)
> Получается то же самое. Надо закрывать и открывать запрос.
Что получается? Ничего не надо закрывать и открывать.
> Похоже, что надо уходить с BDE
Похоже надо книжку прочитать.
snip13 (2006-08-03 14:59:00) [4]Получается то же самое. Надо закрывать и открывать запрос. Похоже, что надо уходить с BDE
Sergey13 (2006-08-03 14:07:00) [5]> [9] snip13 © (03.08.06 14:03)
Получится. Есть TUpdateSQL.
snip13 (2006-08-03 14:03:00) [6]
> А чем не нравится Query1.Insert?
Не получится. Query1 read-only dataset
Sergey13 (2006-08-03 13:46:00) [7]> [7] snip13 © (03.08.06 13:44)
А чем не нравится Query1.Insert?
snip13 (2006-08-03 13:44:00) [8]with TQuery.Create(nil) do begin
SQL.Text := 'INSERT INTO "Table1" ...
...
end
Query1.Close;
Query1.Open;
Sergey13 (2006-08-03 13:40:00) [9]> [5] snip13 © (03.08.06 13:37)
А "(insert/update)" как делаешь?
snip13 (2006-08-03 13:37:00) [10]Я работаю Query-DataSource-DBGrid
Sergey13 (2006-08-03 13:31:00) [11]2 [3] Neo Trinitron © (03.08.06 13:27)
> не совсем понял, а как snip13 работает?
А кто его знает? У нас только 13 общее, а так мы разные люди. 8-)
> Есть ещё способы работы кроме как через DataSet?
Через отдельный запрос.
Neo Trinitron (2006-08-03 13:27:00) [12]Sergey13, не совсем понял, а как snip13 работает? Есть ещё способы работы кроме как через DataSet?
По теме. Не знаю работает ли Refresh, RefreshRecord с таблицами dbase. Попробуй, может получится... На других СУБД (Oracle, напимер) работает на порядок быстрее.
Sergey13 (2006-08-03 13:09:00) [13]Делай изменения через датасет. Тогда и переоткрывать ничего не надо будет. В датасет (в запросе) необязательно тянуть всю таблицу.
Johnmen (2006-08-03 12:58:00) [14]Тебе нужен способ не грид обновлять, а набор данных, который он показывает. А других способов, кроме Close-Open в твоём случае не существует.