Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.05;
Скачать: CL | DM;

Вниз

Несоответствие на Ibase.ru   Найти похожие ветки 

 
Id   (2006-01-11 15:16) [0]

Здраствуйте, Уважаемые.
Пытаюсь разобраться с транзакциями. Читаю статьи на Ibase.ru
Обнаружил в статье http://www.ibase.ru/devinfo/ilevels.htm
второй абзац, фраза
>Обеспечиваются уровни изоляции следующим способом: Любые действия над данными или метаданными в базе данных всегда выполняются в контексте транзакции
В статье http://www.ibase.ru/devinfo/ibtrans.htm
Заголовок ПРИМЕРЫ ПРИМЕНЕНИЯ
>Да, такие техники есть. Для начала приведу список наиболее нежелательных случаев
>4. каждое действие (чтение, вставка, обновление, удаление), обрамляется стартом и commit транзакции
Т.е. в начале автор говорит, что это обязательно, потом - что нежелательно.
Меня это как-то запутало. Так как же правильно?


 
roottim ©   (2006-01-11 15:32) [1]

> каждое действие (чтение, вставка, обновление, удаление), обрамляется стартом и commit транзакции

вот так не желательно

insert into table xxx values (1, 2, ...)
commit
insert into table xxx values (1, 3, ...)
commit
insert into table xxx values (1, 4, ...)
commit


желательный способ вставки

insert into table xxx values (1, 2, ...)
insert into table xxx values (1, 3, ...)
insert into table xxx values (1, 4, ...)
commit


естественно, каждый инсерт при больших вставках комитить каждый раз очень накладно для сервера. Необходимо подобрать нужный интервал, скажем 1000 записей в 1 комит или больше или вообще подождать полной вставки если позволяют ресурсы откта.


 
unknown ©   (2006-01-11 15:36) [2]

Следует внимательнее читать. Автор хотел сказать, что делать коммит после
insert/update/delete каждой записи при операциях с большими объемами
записей  не есть гут. Т.е. если мы допустим в цикле бегаем по датасету и изменяем у каждой записи какие-то поля, затем после изменения каждой записи делаем коммит то это плохо.


 
Id   (2006-01-11 15:42) [3]

Благодарю, понял



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

Текущий архив: 2006.03.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
3-1136733352
VadimSpb
2006-01-08 18:15
2006.03.05
Как программно подключить БД?


1-1138957761
t0mk4
2006-02-03 12:09
2006.03.05
Image1. как вывести только один кусок картинки?


1-1138803775
OlegNik
2006-02-01 17:22
2006.03.05
Перехват завершения работы Windows.


15-1139553043
Rouse_
2006-02-10 09:30
2006.03.05
Ну вот собственно и фсе. Сегодня у меня свадьба :)


2-1140249308
drink
2006-02-18 10:55
2006.03.05
Переменная в двух модулях (Unit).