Вниз
Скачать: CL | DM;

Убрать ограничения на количество изменений в одной транзакции   Найти похожие ветки 

 
KonuhovSegey   (2002-01-02 09:28) [0]

При изменении большого количества записей в одной транзакции, появляется ошибка без сообщения.
В моем случае можно внести 256 изменений, без подтверждения, следующее изменение уже вызывает исключительную ситуацию.

Разбить на несколько транзакций нельзя.
Кеширование изменений в TTable нежелательно.

БД Paradox не сетевая, однопользовательская.
Delphi 5, и BDE родной для нее.

!!! Помогите кто может !!!


 
SergVlad ©   (2002-01-03 10:06) [1]

В чем помочь ?
BDE переписать ?
Для Paradox есть ограничение на 255 записей, участвующих в транзакции.


 
Ынс   (2002-01-04 19:07) [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;

//


 
KonuhovSegey   (2002-01-06 08:25) [3]

БДЕ переписывать не требуется, а вот за совет с монопольным доступом, спасибо. О возможности такого прикола я совсем забыл.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.006 c
3-8781
Alexm
2002-01-07 16:06
2002.02.04
Вопрос!


1-8928
SergN
2002-01-17 16:34
2002.02.04
Как в Memo записать текстовый DOS файл?


3-8790
Ura
2001-12-28 11:02
2002.02.04
BDE


1-8808
DDDeN
2002-01-16 07:29
2002.02.04
Restorator


14-8999
zero
2001-12-12 18:04
2002.02.04
Merlin и модераторы отзовитесь, объясните что случилось




   Наверх