首页 > 其他分享 >8、postgres事务问题-分段提交

8、postgres事务问题-分段提交

时间:2024-01-22 16:46:27浏览次数:27  
标签:SQLERRM EXCEPTION end postgres -- begin 提交 RAISE 分段

postgres事务问题-分段提交

在postgres的pck中,存着这自动提交事务时,想让每个dml操作都能分步提交事务。

1、pck的总调用不能存在exception的异常捕获

注释调总体的异常捕获,再每个dml操作的里面进行异常捕获。

CREATE OR REPLACE PROCEDURE PROCEDURE_name("p_name" text)
 AS $BODY$
DECLARE
    v_count bigint;
BEGIN
  
  begin
   update sys_stu set name = '222' where name = p_name;
   EXCEPTION 
   	RAISE EXCEPTION '(%)', SQLERRM;
  end;
  commit;
  --需要注释掉EXCEPTION
   /*EXCEPTION

      --意外处理
        WHEN OTHERS THEN
        --ROLLBACK;
         --捕获异常,往外抛
        RAISE EXCEPTION '(%)', SQLERRM;*/
  END;

$BODY$
  LANGUAGE plpgsql;

2、主要语法

declare
begin
 --DML
 begin
 	DML...
 	   EXCEPTION 
   	RAISE EXCEPTION '(%)', SQLERRM;
 end;
 commit;
  --DML2
 begin
 	DML2...
 	   EXCEPTION 
   	RAISE EXCEPTION '(%)', SQLERRM;
 end;
 commit;
 --DML3
  begin
 	DML3...
 	   EXCEPTION 
   	RAISE EXCEPTION '(%)', SQLERRM;
 end;
 commit;
end;

标签:SQLERRM,EXCEPTION,end,postgres,--,begin,提交,RAISE,分段
From: https://www.cnblogs.com/lgxdev/p/17980371

相关文章

  • liunx上面备份postgres数据库脚本
    背景在liunx上面安装docker,在docker容器中安装postgres数据库,一定的时间进行数据库的备份 1安装postgresql客户端安装客户端可以执行pg_dump命令sudoyuminstallpostgresql删除客户点sudoyumremovepostgresql2.创建.sh文件#!/bin/bashecho"开始执行Postgr......
  • win10上安装PostgreSQL的 vector扩展
    win10上安装PostgreSQL的vector扩展错误:extension"vector"isnotavailable\nDETAIL:Couldnotopenextensioncontrolfile"D:/ProgramFiles/PostgreSQL/16/share/extension/vector.control":Nosuchfileordirectory.\nHINT:Theextensionmus......
  • postgres-wasm Supabase & Snaplet 开发的可以在浏览器中运行pg的工具
    postgres-wasmSupabase&Snaplet开发的可以在浏览器中运行pg的工具,比较有意思使用到的一些包runtime v86的一个模拟器buildroot 脚本,方便构建一个在v86中运行的cpu以及内存快照websockproxy 网络工具说明官方也提供了一个演示很强大,当然部分技术使用了webassembly可以方便......
  • PostgreSQL运维诊断之操作系统分析
    本课程由风哥发布的基于PostgreSQL数据库的系列课程,本课程属于PostgreSQLOperatingSystemAnalysisandDiagnosis,学完本课程可以掌握PostgreSQL操作系统性能优化分析及工具说明,操作系统工具之top/topas,操作系统工具之vmstat,操作系统工具之iostat,操作系统工具之free/lsps/swapin......
  • PostgreSQL性能优化之基准测试
    本课程由风哥发布的基于PostgreSQL数据库的系列课程,本课程属于PostgreSQLPerformanceBenchmarking,学完本课程可以掌握PostgreSQL性能基准测试基础知识,基准测试介绍,基准测试相关指标,TPCC基准测试基础,PostgreSQL测试工具介绍,PostgreSQL性能基准测试案例1之BenchmarkSQL,Bench......
  • PostgreSQL性能优化之分区表
    本课程由风哥发布的基于PostgreSQL数据库的系列课程,本课程属于PostgreSQLPartitionTable,学完本课程可以掌握PostgreSQL分区表基础知识,什么是分区表,声明式表分区与继承式的区别,PostgreSQL分区表技术的发展,PostgreSQL分区表创建与使用,PostgreSQL范围分区表创建,PostgreSQLHASH分区......
  • PostgreSQL执行计划与统计信息
    本课程由风哥发布的基于PostgreSQL数据库的系列课程,本课程属于PostgreSQLExecutionplanandstatistical,学完本课程可以掌握PostgreSQL性能优化之查询处理,PostgreSQL处理SQL的整个逻辑顺序,PostgreSQL查询处理的流程讲解,PostgreSQL性能优化之执行计划,执行计划的介绍,执行计划......
  • PostgreSQL运维诊断与监控分析
    本课程由风哥发布的基于PostgreSQL数据库的系列课程,本课程属于PostgreSQLDiagnosisandmonitoringanalysis,学完本课程可以掌握PostgreSQL日常运维检查-风哥PGSQL工具箱,风哥专用PGSQL工具箱介绍,风哥专用PGSQL工具箱使用,PostgreSQL运维实时分析与监控,PostgreSQL数据库自动化任务......
  • PostgreSQL性能分析与优化调整
    本课程由风哥发布的基于PostgreSQL数据库的系列课程,本课程属于PostgreSQLPerformanceanalysisandadjustment,学完本课程可以掌握PostgreSQL优化概述与优化方案,PostgreSQL操作系统层优化调整与建议,PostgreSQL存储系统层优化调整与建议,PostgreSQL数据库层面常用优化指标分析,Postg......
  • PG DBA培训23:PostgreSQL执行计划与统计信息
    本课程由风哥发布的基于PostgreSQL数据库的系列课程,本课程属于PostgreSQLExecutionplanandstatistical,学完本课程可以掌握PostgreSQL性能优化之查询处理,PostgreSQL处理SQL的整个逻辑顺序,PostgreSQL查询处理的流程讲解,PostgreSQL性能优化之执行计划,执行计划的介绍,执行计划......