Oracle хранимой процедуры визирования - PullRequest
0 голосов
/ 09 февраля 2019

Мне любопытно взглянуть на вложенные процедуры.У меня есть процедура, Proc1, которая принимает смоделированный UDT C #, который определен на уровне схемы.

Proc2 - insert: (вызывается из Proc1) идентифицирует записи, которые находятся в UDT, но не в таблице, и создает новыеrecords.

Proc3 - обновление: (вызывается из Proc1) Может ли этот процесс видеть (видеть) вновь созданные записи из Proc2?IE, есть ли «коммит» после завершения proc2?

Proc4 - delete (вызов изнутри Proc1) удаляет все правильно идентифицированные записи.

1 Ответ

0 голосов
/ 09 февраля 2019

По окончании процедуры неявные коммиты отсутствуют.Но поскольку все процедуры в одном и том же стеке вызовов являются частью одной и той же транзакции, они по своей сути будут частью одной и той же области транзакции (я игнорирую возможность того, что вы определили одну из ваших процедур для использования автономной транзакции, и я полагаю, что вы не '• явное завершение транзакции путем выдачи явного commit или rollback).Таким образом, каждая процедура будет видеть незафиксированные результаты всего кода, запущенного ранее в одном сеансе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...