Как обработать исключение в пакете Oracle? - PullRequest
0 голосов
/ 21 января 2019

У меня есть пакет оракула, состоящий из множества процедур.Например,

pkg(
proc 1
proc 2
proc 3
);

при выполнении пакета сначала вызывается proc 1, а в proc 1 вызывается proc 2.Так что, если я столкнулся с исключением в proc 2, то я хочу откатить все DML, выполненные в proc 1.

Ответы [ 2 ]

0 голосов
/ 22 января 2019

В дополнение к тому, что упомянул Littlefoot, пожалуйста, учтите, с какой IDE вы работаете.Я рекомендую вам некоторые параметры автоматической фиксации, которые следует отключить.В противном случае откаты не помогут.

0 голосов
/ 21 января 2019

Вам не нужно ничего делать, Oracle выполнит откат для вас.Просто не фиксируйте нигде в этих процедурах - пусть вызывающий решит, фиксировать или нет, после того, как все будет сделано.

Кроме того, не используйте DDL, поскольку он неявно фиксирует все, что было сделано до сих пор.

...