Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.027 c
2-1150553191
redlord
2006-06-17 18:06
2006.07.09
как получить строку по указателю


6-1141205541
Владимир__
2006-03-01 12:32
2006.07.09
WebBrowser и картинки


2-1150484567
Glivera
2006-06-16 23:02
2006.07.09
Работа с екселем


15-1149836328
ANB
2006-06-09 10:58
2006.07.09
Как красивее и понятнее ?


1-1148910500
oleg_
2006-05-29 17:48
2006.07.09
переназначение станрартного выхода в поток




   Наверх