![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Убрать ограничения на количество изменений в одной транзакции [D5, Paradox, ]
KonuhovSegey © (2002-01-02 09:28:00)При изменении большого количества записей в одной транзакции,появляется ошибка без сообщения.
В моем случае можно внести 256изменений, без подтверждения, следующее изменение уже вызывает исключительную ситуацию.
Разбить на несколько транзакций нельзя.
Кеширование изменений в TTable нежелательно.
БД Paradox не сетевая, однопользовательская.
Delphi 5, и BDE родной для нее.
!!! Помогите кто может !!!
KonuhovSegey (2002-01-06 08:25:00) [1]БДЕ переписывать не требуется, а вот за совет с монопольным доступом, спасибо. О возможности такого прикола я совсем забыл.
Ынс (2002-01-04 19:07:00) [2]Ответ: в dbf файлах менять не больше 100 записей, в Парадоксе - 255...
это они там наверху такое придумали... чтобы изменять большее к-во записей надо получить монопольный доступ к таблице(предварительно отсоединившись):
напрЫмер:
var db : TDataBase;
//
....
db.Connected := false;
db.Exclusive := true;
db.Connected := true;
try
db.StartTransaction;
.....
// тут че то творишь с записями =-)
db.Commit;
except
db.RollBack; //Transaction failed. Шо то не сложилось!
raise;
end; //try transaction
dm.db.Connected := false;
dm.db.Exclusive := false;
dm.db.Connected := true;
//
SergVlad (2002-01-03 10:06:00) [3]В чем помочь ?
BDE переписать ?
Для Paradox есть ограничение на 255 записей, участвующих в транзакции.