powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Транзакции!!!
6 сообщений из 6, страница 1 из 1
Транзакции!!!
    #32064752
BeerCan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тут проскочила эта проблема, но решения она не получила. Может я получу?
ADO. В совершенно посторонней программе, поддерживающей ActiveX, пишу что-то подобное:
инициализация MDACConnection и открытие .

RecordSet:=SELECT * FROM bla-bla. ..
BeginTrans()...
.... uuupsss :"Cannot create new transaction because capacity was exceeded..." Чегооо???

Хммм.
Если-же между этими двумя командами ВСТАВИТЬ команду
RecordSet:=UPDATE bla-bla SET.....
то ВСЁ ПРОХОДИТ БЕЗ ОШИБОК!!!!

Друзья, это вопрос принципа: ЧТО ЗА ДЕЛА ?!

Жду ответа как соловей лета.
...
Рейтинг: 0 / 0
Транзакции!!!
    #32064807
BeerCan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не совсем так...
Если BeginTrans ДО SELECT - то всё ОК. Если ПОСЛЕ - выскакивает ошибка...
...
Рейтинг: 0 / 0
Транзакции!!!
    #32064818
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Давай несколько локализуем ошибку. После select перейди на последнюю запись для гарантии, что весь набор зафетчен и тогда уже пытайся begintran. Озвучи результат.
...
Рейтинг: 0 / 0
Транзакции!!!
    #32064925
BeerCan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я использую MDACConnection.Execute метод для выполнения SQL запросов.
Этот метод возвращает read-only, forward-only Recordset и
MoveLast вызывает ошибку.
Что можно ещё попробовать?
...
Рейтинг: 0 / 0
Транзакции!!!
    #32064973
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробовать указать клиентский курсор
...
Рейтинг: 0 / 0
Транзакции!!!
    #32064994
BeerCan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема решена!!!
Постольку поскольку метод Execute сам возвращает НОВЫЙ RecordSet обьект, то изменить его параметры нельзя.
Очевидно дело не в курсоре, а драйвере.
Каждый раз, вызывая метод Execute у меня создавался НОВЫЙ курсор-обьект... Если таких обьектов до BeginTrans много - возникает проблема.
Короче надо всем текущим курсорам(или части из них) перед BeginTrans сделать кирдык. Close.

Спасибо, друзья.

Ваш ДК :) Берегите себя!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Транзакции!!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]