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

Вниз

Помогите плз с транзакциями!!!   Найти похожие ветки 

 
Igor666   (2006-05-11 14:20) [0]

Значится так, я работаю с МССКЛ через АДО, и трабл в том что если я начинаю транзакцию то больше никто не может даже сделать обычную выборку из БД, прога просто висит пока транзакция не будет завершена. Я с АДО работал мало поэтому не знаю что и как настраивать, пробовал перебирать уровни изоляции не помогло. Подскажите пожалуйста что нужно сделать чтобы можно было работать с несколькими транзакциями одновременно.
Заранее спасибо.


 
Nikolay M. ©   (2006-05-11 14:32) [1]


> Подскажите пожалуйста что нужно сделать чтобы можно было
> работать с несколькими транзакциями одновременно.


Для начала понять механизм блокировок, обеспечивающих необходимые уровни изоляции (БОЛ: весь раздел locking + все see also). И взять себе за правило, что транзакции должны быть как можно более короткими по времени и наименее ресурсоемкими.


 
igor666   (2006-05-11 14:38) [2]

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


 
sniknik ©   (2006-05-11 14:44) [3]

> что нужно сделать
постараться понять, а зачем они тебе вообще нужны, транзакции...
так например, сдесь довольно часто бывает, "забабахает" ктонибудь откат действий для юзеров на транзакциях ... (т.е. на кнопку cancel rollbak вешают), после жалуются "не получается с транзакциями работать",  а и не получится, не для того они.

> Это вообще как то лечиться или нет?
в общем то да, лечится, есть "грязное чтение" но лучше не надо, лучше приведи в порядок логику программы.


 
Nikolay M. ©   (2006-05-11 14:55) [4]


> сорри, я немного не понял, суть в том что после начала транзакции
> я не могу даже сделать обычный "селект", я понимаю еслибы
> он мне блокировал редактирование, но даже обычную выборку
> блокирует. Это вообще как то лечиться или нет?


Лечится. Чтением вышеуказанного раздела и книжек по теории БД вообще и MS SQL в частности.
Читать лекцию в форуме, к сожалению, не могу, а в 2 словах рассказать о поведении MS SQL при конкурирующих транзакциях нельзя. Если поймешь, например, вот эту статью, буду рад прояснить непонятые моменты, если нет - ищи в яндексе статьи попроще по словам вроде блокировка, ресурс, транзакция, уровень изоляции и тд

http://rsdn.ru/article/db/LockEscalation.xml

Как только избавишься от надуманных терминов "блокировка редактирования" - welcome :)



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

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

Наверх




Память: 0.48 MB
Время: 0.073 c
15-1149744955
new1
2006-06-08 09:35
2006.07.09
Запуск Delphi без установки дистрибутива


2-1151158305
max1981
2006-06-24 18:11
2006.07.09
Закрытие окна проводника из своей программы


15-1149857861
syte_ser78
2006-06-09 16:57
2006.07.09
Опять об авторском праве


2-1150570432
Steplerr
2006-06-17 22:53
2006.07.09
Альтернатива OLE при работе c XLS & DOC


2-1150475321
fast2
2006-06-16 20:28
2006.07.09
Подскажите, как "разложить" строку на части.