问一个关于Oracle的嵌套事务的问题
我现在是在修改前人的程序,大致就是一个主的sp下面调用了很多小sp(真的很多),可是所有的小的sp里面最后都有commit结尾
这样造成我的主sp里的rollback其实没有意义,只能回滚到最近成功的那个小sp,而不能回滚到主sp得最前面。
不知道面对这种场合能改嘛?因为小sp数量真的很多,所以一个一个改不大现实。想问问大家。
------解决方案--------------------用oracle的闪回功能
select DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER as RS from dual
取得你需要的scn号。。。
你要回滚的时候
使用
flashback table xxx to scn 1234
刚才的scn号
哈哈。可以否?