oracle - Oracle 中的 SQLCODE 相当于 Postgres

标签 oracle postgresql plpgsql postgresql-9.4 postgresql-9.5

在 Oracle 中,

WHEN OTHERS THEN
  IF SQLCODE = -31011 THEN

如何转换以上内容

IF SQLCODE = -31011 THEN 到 Postgres,因为 SQLCODE = -31011 与 Postgres 不兼容

最佳答案

PostgreSQL 使用“标准化”SQLSTATE 代码。您应该在表 https://www.postgresql.org/docs/current/errcodes-appendix.html 中找到最接近的代码.

您应该更喜欢命名异常(如果可用)(不适用于自定义异常):

WHEN OTHERS THEN
  IF SQLSTATE = '22012' THEN 

关于oracle - Oracle 中的 SQLCODE 相当于 Postgres,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53181391/

相关文章:

postgresql - 如何使用 PL/pgSQL 将静态字符串附加到格式化数组

postgresql - 使用 plpgsql 获取函数内部当前函数的名称

sql - 返回任意类型的 PostgreSQL 函数

sql - 没有秒的 oracle 时间戳

oracle - 获取 oci_execute() 错误的错误消息 (PHP)

oracle - Oracle 中的 INSERT ALL 语句无法插入

arrays - PLPGSQL 数组索引从 1 开始?

java - 如何使 Java 和 Postgres 枚举协同工作以进行更新?

带别名的 SQL 汇总

c++ - Oracle OCI、绑定(bind)变量和查询,如 ID IN (1, 2, 3)