什么是高级?这就叫高级—openGauss(236)

14 阅读1分钟

#openGauss #入门 #安装 #数据库 #开源

知识来源:docs-opengauss.osinfra.cn/zh/

  • 示例2:

    支持含有EXCEPTION的存储过程使用COMMIT/ROLLBACK。

    支持在存储过程的EXCEPTION语句内使用COMMIT/ROLLBACK。

    支持DDL在COMMIT/ROLLBACK后的提交/回滚。

    CREATE OR REPLACE PROCEDURE TEST_COMMIT_INSERT_EXCEPTION_ROLLBACK()
    AS
    BEGIN
    	DROP TABLE IF EXISTS TEST_COMMIT; 
    	CREATE TABLE TEST_COMMIT(A INT, B INT);
    	INSERT INTO TEST_COMMIT SELECT 1, 1;
    	COMMIT;
            CREATE TABLE TEST_ROLLBACK(A INT, B INT);
    	RAISE EXCEPTION 'RAISE EXCEPTION AFTER COMMIT';
    EXCEPTION
        WHEN OTHERS THEN
    	INSERT INTO TEST_COMMIT SELECT 2, 2;
    	ROLLBACK;
    END;
    /
    

#openGauss #入门 #安装 #数据库 #开源

知识来源:docs-opengauss.osinfra.cn/zh/