Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Вложенные транзакции в MS SQL

21K
25 июня 2007 года
alex_kart
14 / / 17.03.2007
пишу в делфи прогу для работы с СУБД MS SQL. Для связи использую компонент TADOConnection. Проблема в том, что не могу создать еще одну транзакцию, до тех пор, пока не закрыта текущая, т. е. после соединения вызываю метод BeginTrans, все работает нормально, но если после этого опять вызвать BeginTrans, выводится ошибка "В данном сеансе невозможен запуск дополнительных транзакций".
Делал тоже самое с базой Acsess, там такое сообщение вылетало после 5ой транзакции. В то, что MS SQl не поддерживает параллельные транзакции не верю :) . Подскажите, где я ошибаюсь?
З. Ы. Если создать 2 компонента TADOConnection, и вызвать у каждого BeginTrans то все работает
385
27 июня 2007 года
SomewherSomehow
477 / / 25.07.2004
Не знаю как реализованы компоненты и механизм работы с транзакциями в дельфи, но скажу как это сделано в .NET. Там смысл такой что транзакция является свойством подключения а не процедуры или запроса, иными словами она открывается на один коннекшн и работает со всеми процедурами которые ее используют, выглядит примерно так:
 
Код:
sqlTran = myConnection.BeginTran();
storedProc1.Transaction = sqlTran;
storedProc2.Transaction = sqlTran;
....

Может и в дельфи что-то подобное?
Параллельные транзакции на разные подключения?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог