Я пытаюсь написать клиент, который выполняет серию хранимых процедур DB2 iSeries в DB2. Я использую провайдера IBM.Data.DB2.iSeries, и мне нужно, чтобы все мои вызовы были внутри транзакции .NET. Кажется, что все игнорируется, а данные фиксируются. Любые указатели...
Как включить транзакции с IBM.Data.DB2.iSeries для хранимых процедур
Ответы (3)
Ведется ли журнал в базе данных iSeries? Это необходимо для контроля обязательств.
person
Brandon Peterson
schedule
29.05.2009
Ваш сервер iSeries находится на обслуживании программного обеспечения? Если это так, вы, вероятно, можете позвонить в IBM и спросить их напрямую.
- person Brandon Peterson; 02.06.2009
Также может быть полезно узнать, как определяются или используются эти хранимые процедуры. Используете ли вы оператор SQL CALL, это RPG-программы и т. д.
- person Brandon Peterson; 02.06.2009
Кстати, хранимые процедуры могут быть определены для автоматической фиксации при их использовании. См. предпоследний абзац на itjungle.com/fhg/fhg061604-story01.html а>.
- person Brandon Peterson; 02.06.2009
У меня была такая же проблема, и я понял, что проблема не в коде .Net, а в хранимой процедуре. Проверьте определение хранимой процедуры на наличие параметра COMMIT. Если для него установлено значение «*NONE», он будет автоматически фиксироваться независимо от транзакций в вашем коде .Net. Измените его на *RR (повторяемое чтение), и ваши транзакции должны работать правильно.
Подробнее здесь.
person
AJ.
schedule
31.07.2009