Как отключить AutoCommit для OracleConnection
От: maramzin  
Дата: 17.06.05 13:13
Оценка:
Уважаемые, подскажите пожалуйста, как можно выключить в C# режим AutoCommit для OracleConnection.
Как отключить AutoCommit для OracleConnection
От: Аноним  
Дата: 17.06.05 13:56
Оценка:
Используйте транзакции и явно фиксируйте или отклоняйте.

Все должно быть просто, очень просто, настолько просто — насколько это возможно!
Оренбургское сообщество .NET разработчиков
Мой блог


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re: Как отключить AutoCommit для OracleConnection
От: Аноним  
Дата: 21.06.05 08:49
Оценка:
ЕВ>Используйте транзакции и явно фиксируйте или отклоняйте.
Прошу прощения, наверное я не совсем четко сформулировал вопрос.Собственно интересует отключение режима AutoCommit без использования транзакций, по аналогии с Java: oracleConn.setAutoCommit(false);
Т.е. мне бы хотелось использовать Oracle в нормальном режиме, когда транзакции на уровне сервера неявно начинается при изменении данных. Каждый раз стартовать транзакцию привязывать ее к ко всем OracleCommand, не совсем удобно и на мой взгляд не совсем идеологически правильно. И навязчивое стремление ADO.NET после того как транзакция закончена (Commit/Roolback) посылать в БД перед каждым запросом (в том числе и SELECT!) Rollback, честно говоря вызывает не лучшие чувства.
Re: Как отключить AutoCommit для OracleConnection
От: Аноним  
Дата: 21.06.05 09:23
Оценка:
А почему ручное управление транзакциями не совсем идеологически правильно? А как же тогда управлять апдейтом набора данных?
-----
Нулевое оформления постов благодаря Opere.


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re: Как отключить AutoCommit для OracleConnection
От: Аноним  
Дата: 21.06.05 10:09
Оценка:
>Прошу прощения, наверное я не совсем четко сформулировал вопрос.
>Собственно интересует отключение режима AutoCommit без использования транзакций, по аналогии с Java: oracleConn.setAutoCommit(false);
мне кажется, нет такого.
С уважением, Александр. AlexKD Blog


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[2]: Как отключить AutoCommit для OracleConnection
От: maramzin  
Дата: 21.06.05 11:19
Оценка:
ALV>А почему ручное управление транзакциями не совсем идеологически правильно? А как же тогда управлять апдейтом набора данных?
идеологически неправильным я считаю работу в AutoCommit режиме по умолчанию, любое изменение должно проходить в рамках транзации по определению. Это все я говорю относительно Oracle, где нет необходимости явно стартовать транзакцию клиенту, так как она неявно запускается сервером при первом изменении данных. Я с ADO.NET работаю еще мало, но ряд моментов с классом OracleTransaction мне не очень нравятся. AutoCommit — понятно что плохо. Но когда я смотрю на трафик SQL-запросов в БД и вижу, что пока я не стартовал транзакцию идут чистые SELECT'ы. После того как прошел апдейт БД и я вызвал transactio.Commit() ADO.NET перед кажым следующим запрососм SELECT в БД выдает команду ROLLBACK! Зачем? Причем как транзакцию ни убивай (Dispose,=null,...) rollback'и все идут и идут. Когда внаглую через рефлексию для приватной переменной OracleConnectio._transaction присваиваю null — ADO.NET успокаивается и в БД опять идут чистенькие запросики SELECT. Может кто подскажет более простой вариант действий, или я слишком многого и непонятного хочу от ADO.NET?
PS. MS VisualStudio .NET 2003, OracleClient — стандартный, поставляемый с VS, Driver — Поставщик Microsoft OLE DB для Oracle (MSDAORA.1)
Re[3]: Как отключить AutoCommit для OracleConnection
От: OnThink Россия http://vassilsanych.livejournal.com
Дата: 19.07.05 11:23
Оценка:
Здравствуйте, maramzin, Вы писали:
M>или я слишком многого и непонятного хочу от ADO.NET?
вроде того.

хочешь автоматизма — сделай оболочку
не думаю, что очень много кода надо
... << RSDN@Home 1.1.3 stable >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.