![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Commit [FireBird 2.0]
DelphiLexx © (2006-12-06 14:19:00)Ситуация следующая: есть грид который хранит много записей при. Их сохранение в БД выполняется с помощью Commit'a. Можно ли как нибудь получить процент сохраненных данных, ну чтобы сделать отображение процесса сохранения данных в БД на ProgressBar
Бугага (2006-12-12 02:14:00) [1]
> Anatoly Podgoretsky © (09.12.06 13:11) [12]
Я забыл смайл поставить :)
Anatoly Podgoretsky (2006-12-09 13:11:00) [2]> Бугага (09.12.2006 9:57:11) [11]
А зачем, приказ прямой удалить если есть. Результат же должен быть такой, чтобы таблицы не было в базе.
Бугага (2006-12-09 09:57:00) [3]А
DROP TABLE tablenameпроверяет наличие таблицы в базе....
Desdechado (2006-12-07 12:15:00) [4]DelphiLexx © (07.12.06 08:59) [6]
Если ты такой упертый, не вызывай INSERT|UPDATE|DELETE, вызывай вместо них COMMIT, ага?
iXT (2006-12-07 11:06:00) [5]Я не пойму. Что? У производители клав дефицыт с кнопками F1?
iXT (2006-12-07 11:01:00) [6]
> Ну как же она ничего несохраняет. За ней последнее слово
> внести все изменения на сервер или отменить их.
Точно, точно. А Rollback их что, из памяти выкавырвает?
Сергей М. (2006-12-07 09:19:00) [7]
> DelphiLexx © (06.12.06 18:52) [4]
> вносит изменения только в памяти
У тебя TClientDataSet используется ? В режиме CachedUpdates ?
Если нет, то с чего ты взял это ?
Все изменения фиксируются на серверев контексте текущей транзакции, при commite которой эти изменения собственно и вносятся в соответствующие БД-объекты.
> есть грид который хранит много записей
Грид не хранит никакие записи.
Записями заведует TDataSet, а грид лишь визуализинует фрагменты НД при посредничестве TDataSource
DelphiLexx (2006-12-07 08:59:00) [8]
> Коммит - это команда подтверждения транзакции (окончания
> переноса данных на сервер). Она ничего не сохраняет.
Ну как же она ничего несохраняет. За ней последнее слово внести все изменения на сервер или отменить их.
Desdechado (2006-12-06 20:57:00) [9]Еще раз повторяю. Коммит - это команда подтверждения транзакции (окончания переноса данных на сервер). Она ничего не сохраняет. Команды сохранения - INSERT/UPDATE/DELETE. Ты их можешь формировать руками и управлять прогрессбаром или довериться ApplyUpdates но без градусников.
DelphiLexx (2006-12-06 18:52:00) [10]
> если сохранять по одной (запросами типа INSERT|UPDATE),
> то можно
> а коммит в конце
Дело в том, что вносит изменения только в памяти, а затем при закрытии формы все изменения вносятся в БД через Commit. Вот я и хотел чтобы при сохранении показывался ProgressBar c процнентом сохраненных данных.
Desdechado (2006-12-06 16:55:00) [11]если сохранять по одной (запросами типа INSERT|UPDATE), то можно
а коммит в конце
iXT (2006-12-06 15:42:00) [12]
> Их сохранение в БД выполняется с помощью Commit'a.
Чего???
Sergey13 (2006-12-06 14:21:00) [13]ЗЫ: Что ж так орехами то сегодня пахнет. 8-)