Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Транзакции в ADP+SQL 2000 / 17 сообщений из 17, страница 1 из 1
15.09.2003, 11:53
    #32264892
Violator
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
Добрый день.

Использую ADP с такой Connection strimg:

Provider=Microsoft.Access.OLEDB.10.0;Persist Security Info=False;Data Source=SQL1;Integrated Security=SSPI;Initial Catalog=MYDB;Data Provider=SQLOLEDB.1

Код :
CurrentProject.Connection.BeginTrans
CurrentProject.Connection.Execute "UPDATE _RR_ SET SUMMA = 1"
CurrentProject.Connection.CommitTrans

На последней строке ругается: "No transaction is active"

Что посоветуете ?
...
Рейтинг: 0 / 0
15.09.2003, 12:03
    #32264918
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
попробуй для своего батча использовать дополнительное соединение.
так как ты используешь соединение аксесса то возможно аксесс сам и подтверждает твою транзакцию ...
...
Рейтинг: 0 / 0
15.09.2003, 12:24
    #32264950
Violator
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
Создал свое соединение, все равно не работает
...
Рейтинг: 0 / 0
15.09.2003, 12:41
    #32264969
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
а чем тебя не устраивают транзакции в SQL в хранимке?
...
Рейтинг: 0 / 0
15.09.2003, 12:50
    #32264984
Violator
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
Не устраивают тем, что придется их писать даже для мелочей. Не хочу много хлама на SQL и так уже достаточно.

И все-таки, не пойму, что это за баг. Неужели нельзя работать с транзакциями ?
...
Рейтинг: 0 / 0
15.09.2003, 13:16
    #32265030
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
2Violator

Правильно АлексейК присоветовал - не дело клиента транзакции держать. На сервере все должно быть.

Привиди код подклчения с отдельным конектом целиком (странно что не работает)
...
Рейтинг: 0 / 0
15.09.2003, 13:24
    #32265043
Violator
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
cnnStock.ConnectionString = "Provider=Microsoft.Access.OLEDB.10.0;Persist Security Info=False;Data Source=SQL1;Integrated Security=SSPI;Initial Catalog=MYDB;Data Provider=SQLOLEDB.1"
cnnStock.Mode = adModeReadWrite
cnnStock.CursorLocation = adUseServer
cnnStock.Open
cnnStock.BeginTrans
cnnStock.Execute "UPDATE _RR_ SET SUMMA = 1"
cnnStock.Connection.CommitTrans
...
Рейтинг: 0 / 0
15.09.2003, 13:57
    #32265094
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
2 Violator
Строку подключения похоже скопировал с CurrentProject.Connection.ConnectionString
а нужно с CurrentProject.BaseConnectionString
...
Рейтинг: 0 / 0
15.09.2003, 18:23
    #32265513
SM
SM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
Возможно дело в том, что тут присутствует всего одна T-SQL команда, а она всегда выполняется транзакуионно. Т.е. оборачивать ее в дополнительную транзакцию совершенно необязательно.
...
Рейтинг: 0 / 0
15.09.2003, 21:28
    #32265641
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
Это опечатка: cnnStock.BeginTrans? (д.б cnnStock.Connection.BeginTrans )
...
Рейтинг: 0 / 0
16.09.2003, 15:35
    #32266687
Maligor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
...
Рейтинг: 0 / 0
16.09.2003, 15:45
    #32266707
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
2Maligor

АлексейК уже советовал сделать отдельный конект, на что был дан ответ "Создал свое соединение, все равно не работает".
...
Рейтинг: 0 / 0
16.09.2003, 15:48
    #32266710
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
2 Сенин Виктор
А incold заметил, что коннект создан не с той строкой подключения.
...
Рейтинг: 0 / 0
16.09.2003, 15:56
    #32266726
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
>А incold заметил, что коннект создан не с той строкой подключения.

Да? Тады ясно.
Хотя ( в т.ч. по ссылке Maligor'a) достаточно сделать Set c = CurrentProject.Connection
...
Рейтинг: 0 / 0
16.09.2003, 15:56
    #32266728
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
Хотя на строку подключения должно быть пофиг.
Судя по тому, что написала MS

Each time the CurrentProject.Connection object is used, it has a different pointer to the connection. In effect, the instance or pointer to that object is temporary

должно быть достаточно просто сохранить ссылку на connection в отдельную переменную.
Проверил - все работает.
...
Рейтинг: 0 / 0
16.09.2003, 15:56
    #32266730
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
пока проверял - апаздал
...
Рейтинг: 0 / 0
17.09.2003, 16:30
    #32268089
Violator
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакции в ADP+SQL 2000
Spasibo. Rabotaet !
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Транзакции в ADP+SQL 2000 / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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