Добрый день господа!
Начитался о полезности такой технологии как COM+ (идея мне понравилась :)
и решил опробовать на практике. Написал на АТЛ несколько компонентов с поддержкой
МТС (для работы с Ораклом — использовал темплаты OLEDB). Как положено — зарегистрировал их.
Но вместо того, чтобы входить в транзакцию, каждая SQL-команда — просто коммитится. А вызовы SetAbort()
просто игнорируются. Я менял по всякому параметры, нашел в документации к ораклу, что нужно
запустить сервис поддержки МТС — запустил — но толку никакого. Интересно, а у кого-нибудь получалось
заставить работать вместе оракл и ком+ ?
Re: COM+ & Oracle
От:
Аноним
Дата:
14.06.01 08:44
Оценка:
Здравствуйте ashev, вы писали:
A>Добрый день господа! A>Начитался о полезности такой технологии как COM+ (идея мне понравилась :) A>и решил опробовать на практике. Написал на АТЛ несколько компонентов с поддержкой A>МТС (для работы с Ораклом — использовал темплаты OLEDB). Как положено — зарегистрировал их. A>Но вместо того, чтобы входить в транзакцию, каждая SQL-команда — просто коммитится. А вызовы SetAbort() A>просто игнорируются. Я менял по всякому параметры, нашел в документации к ораклу, что нужно A>запустить сервис поддержки МТС — запустил — но толку никакого. Интересно, а у кого-нибудь получалось A>заставить работать вместе оракл и ком+ ?
У меня получилось. Попробуй флажок в свойствах объекта в MTS поставить(Закладка Transaction -> Supported)
А разве OLE DB поддерживает распределенные транзакции без доплнитеьного кодирования?
Мне казалась, что это в ADO встроили овтоматическое принятие распределенной транзакции, а в OLE DB есть только возможность программно подкулючиться к транзакции DTS. А так надо вызывать старт транзакшон/коммит транзакшон.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.