Главная страница
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.093 c
15-1149659630
tButton
2006-06-07 09:53
2006.07.09
"MSN Messenger" или "дела сердешные"


15-1150129891
Nic
2006-06-12 20:31
2006.07.09
Создание электронной библиотеки кафедры


10-1120634549
Alkid
2005-07-06 11:22
2006.07.09
Отладка COM-объектов


3-1146625597
гога
2006-05-03 07:06
2006.07.09
Двухстрочный заголовок DBGrid


2-1150989372
Urvin
2006-06-22 19:16
2006.07.09
List View - не добавляются элементы