不支持调用的上下文环境:
不支持除PLSQL 的其他存储过程中调用COMMIT/ROLLBACK/SAVEPOINT,例如
PLJAVA、PLPYTHON 等。
不支持函数中调用COMMIT/ROLLBACK/SAVEPOINT ,包括函数调用含有
COMMIT/ROLLBACK/SAVEPOINT 的存储过程。
不支持事务块中调用了SAVEPOINT 后,
调用含有COMMIT/ROLLBACK 的存储过程。
不支持TRIGGER 中调用含有COMMIT/ROLLBACK/SAVEPOINT 语句的存储过程。
不支持EXECUTE 语句中调用COMMIT/ROLLBACK/SAVEPOINT 语句。
不支持在CURSOR 语句中打开一个含有COMMIT/ROLLBACK/SAVEPOINT 的存储过
程。
不支持带有
IMMUTABLE
以及
SHIPPABLE
的存储过程调用
COMMIT/ROLLBACK/SAVEPOINT,或调用带有COMMIT/ROLLBACK/SAVEPOINT
语句的存储过程。
不支持SQL 中调用含有COMMIT/ROLLBACK/SAVEPOINT 语句的存储过程,除了
SELECT PROC 以及CALL PROC。
存储过程头带有GUC 参数设置的不允许调用COMMIT/ROLLBACK/SAVEPOINT 语句。
不支持
CURSOR/EXECUTE
语句,以及各类表达式内调用
COMMIT/ROLLBACK/SAVEPOINT。
GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
664
自治事务和存储过程事务是两个独立的事务,不能互相使用对方事务中定义的保存点。
不支持提交回滚的内容:
不支持存储过程内声明变量以及传入变量的提交/回滚。
不支持存储过程内必须重启生效的GUC 参数的提交/回滚。