Skip to content

适用虚谷数据库版本

v12.10.8



适用虚谷数据库版本

v12.10.8


E19001-E19999

📄字数 17.5K
👁️阅读量 加载中...

当前页面错误码为编码、系统相关错误码。

注意

%s,%d是C语言中的格式化输出符,会根据输入的值自动填充

E19001:当前事务被管理员中止

  • 错误原因

    1. 管理员调用 DBMS_DBA.KILL_TRANS 主动 KILL 主事务。
  • 分析与建议

    1. 无。

E19002:系统存取保护事故

  • 错误原因

    1. 任务线程内部发生了非法内存访问,由操作系统内核向目标进程发送 SIGSEGV 信号。
  • 分析与建议

    1. 大多数情况下,该异常会在进程的工作目录下生成线程堆栈跟踪日志 exception_stack.trc,可联系内核研发人员定位。

E19003:非法指令

  • 错误原因

    1. 任务线程内部执行了非法指令,由操作系统内核向目标进程发送 SIGILL 信号。
  • 分析与建议

    1. 大多数情况下,该异常会在进程的工作目录下生成线程堆栈跟踪日志 exception_stack.trc,可联系内核研发人员定位。

E19004:浮点数错误

  • 错误原因

    1. 系统进行浮点数运算时异常,可能由数据异常导致该问题。
  • 分析与建议

    1. 确认运算数据是否正常。

E19005:除数为0

  • 错误原因

    1. 涉及数值的除法(/)、取余(%)运算时,除数为 0。
    2. 调用 MODREMAINDER 等部分数学系统函数时,传入的作为除数的参数值为 0。
  • 分析与建议

    1. 可修改系统参数 error_for_division_zero = false 将异常降级为警告。

E19006:运行栈溢出

  • 错误原因

    1. PL/SQL 计算栈上用于存放参数、变量、常数的空间被耗尽。
  • 分析与建议

    1. 从过程和函数设计上精简参数、变量、常数个数。
    2. 增配系统参数 function_stack_size 后重启数据库服务。

E19007:框架栈溢出

  • 错误原因

    1. 过程、函数和包的嵌套调用或递归调用层次超过数据库设计最大值 128。
  • 分析与建议

    1. 减少嵌套调用和递归调用层级,不可超过 128 层。

E19009:查询无结果

  • 错误原因

    1. 执行 PL/SQL 时,查询语句无结果集返回,不满足场景需求。
  • 分析与建议

    1. 编写 PL/SQL 时,对该异常进行捕获处理。

E19010:查询结果太多

  • 错误原因

    1. 执行 PL/SQL 时,查询语句返回的结果集行数大于场景需求。
  • 分析与建议

    1. 编写 PL/SQL 时,对该异常进行捕获处理。

E19012:游标未打开

  • 错误原因

    1. 执行 PL/SQL 时,涉及使用游标读取数据或获取游标属性的场景下,检测到游标未打开。
  • 分析与建议

    1. 使用游标前,确保进行了 OPEN CURSOR 操作。

E19013:锁升级冲突或超时

  • 错误原因

    1. 系统内部资源锁在加锁过程中出现锁升级冲突或加锁超时。
    2. 事务内尝试对共享资源加锁时,发现本事务内对该资源已经持有等级更低的锁,则尝试升级该资源上已经被持有的锁资源等级,但升级后的锁与预申请的锁不兼容,出现加锁超时。
    -S 锁(1)X 锁(2)IS锁(3)IX锁(4)SIX锁(5)
    S 锁(1)兼容不兼容兼容不兼容不兼容
    X 锁(2)不兼容不兼容不兼容不兼容不兼容
    IS锁(3)兼容不兼容兼容兼容兼容
    IX锁(4)不兼容不兼容兼容兼容不兼容
    SIX锁(5)不兼容不兼容兼容不兼容不兼容
  • 分析与建议

    1. 无。

E19014:Pctfree 值必须介于0与90之间

  • 错误原因

    1. 创建表对象时指定 PCTFREE 属性,且 PCTFREE 属性的取值不在合理范围内。
  • 分析与建议

    1. 创建表对象时指定的 PCTFREE 属性取值应在合理范围内。

E19015:Pctused 值必须介于10与100之间

  • 错误原因

    1. 创建表对象时指定 PCTUSED 属性,且 PCTUSED 属性的取值不在合理范围内。
  • 分析与建议

    1. 创建表对象时指定的 PCTUSED 属性取值应在合理范围内。

E19016:内存分配失败

  • 错误原因

    1. 系统申请排序内存时,排序内存不足。
    2. 系统级调用 malloc 申请内存失败。
  • 分析与建议

    1. 合理配置 system_sga_mem,保证系统内部的数据排序计算内存充足;条件允许的情况下,可开启 ena_share_sga
    2. 部署数据库服务时,合理配置进程所需内存开销,不能过度配置进程内存。

E19017:内存释放时出错

  • 错误原因

    1. 数据库系统的内存管理模块进行内存释放处理时,检测到被释放的内存单元异常。
  • 分析与建议

    1. 联系内核研发人员定位处理。

E19018:操纵符(%s %s %s)不存在

  • 错误原因

    1. SQL 中的表达式涉及不支持的数据类型运算。
  • 分析与建议

    1. 按提示对原表达式做出调整。

E19019:FLOAT类型精度不能小于1

  • 错误原因

    1. 创建表对象时,指定的 FLOAT 字段类型精度异常(小于 1)。
    2. 创建存储过程/函数/包时,参数中 FLOAT 字段类型精度异常(小于 1)。
    3. 编译 PL/SQL 语句时,声明 FLOAT 类型的局部变量精度异常(小于 1)。
  • 分析与建议

    1. FLOAT 数据类型的精度不能小于 1。

E19020:FLOAT类型精度不能大于16

  • 错误原因

    1. 创建表对象时,指定的 FLOAT 字段类型精度异常。
    2. 创建存储过程/函数/包时,参数中 FLOAT 字段类型精度异常。
    3. 编译 PL/SQL 语句时,声明 FLOAT 类型的局部变量精度异常。
  • 分析与建议

    1. 合理设置 FLOAT 数据类型的精度。

E19021:NUMERIC类型精度%d不在1与%d之间

  • 错误原因

    1. 创建表对象时,指定的 NUMERIC 字段类型精度异常。
    2. 创建存储过程/函数/包时,参数中 NUMERIC 字段类型精度异常。
    3. 编译 PL/SQL 语句时,声明 NUMERIC 类型的局部变量精度异常。
  • 分析与建议

    1. 使用 NUMERIC 数据类型时,其中 NUMERIC(preci, scale) 的 preci 表示精度,scale 表示标度,精度的取值范围应为 1 ≤ preci ≤ 38,标度的取值范围应为 0 ≤ scale ≤ preci。

E19022:NUMERIC类型标度%d不在0与%d之间

  • 错误原因

    1. 创建表对象时,指定的 NUMERIC 字段类型标度异常。
    2. 创建存储过程/函数/包时,参数中 NUMERIC 字段类型标度异常。
    3. 编译 PL/SQL 语句时,声明 NUMERIC 类型的局部变量标度异常。
  • 分析与建议

    1. 使用 NUMERIC 数据类型时,其中 NUMERIC(preci, scale) 的 preci 表示精度,scale 表示标度,精度的取值范围应为 1 ≤ preci ≤ 38,标度的取值范围应为 0 ≤ scale ≤ preci。

E19023:DECIMAL类型精度%d不在1与%d之间

  • 错误原因

    1. 创建表对象时,指定的 DECIMAL 字段类型精度异常。
    2. 创建存储过程/函数/包时,参数中 DECIMAL 字段类型精度异常。
    3. 编译 PL/SQL 语句时,声明 DECIMAL 类型的局部变量精度异常。
  • 分析与建议

    1. 使用 DECIMAL 数据类型时,其中 DECIMAL(preci, scale) 的 preci 表示精度,scale 表示标度,精度的取值范围应为 1 ≤ preci ≤ 38,标度的取值范围应为 0 ≤ scale ≤ preci。

E19024:DECIMAL类型标度%d不在0与%d之间

  • 错误原因

    1. 创建表对象时,指定的 DECIMAL 字段类型标度异常。
    2. 创建存储过程/函数/包时,参数中 DECIMAL 字段类型标度异常。
    3. 编译 PL/SQL 语句时,声明 DECIMAL 类型的局部变量标度异常。
  • 分析与建议

    1. 使用 DECIMAL 数据类型时,其中 DECIMAL(preci, scale) 的 preci 表示精度,scale 表示标度,精度的取值范围应为 1 ≤ preci ≤ 38,标度的取值范围应为 0 ≤ scale ≤ preci。

E19028:%s(出现在靠近%s的地方)

  • 错误原因

    1. 查询语句中使用 LIMIT 时,其后得表达式计算结果不是数值数据类型。
    2. 分页查询语句中,其 LIMIT 或 OFFSET 后的表达式计算结果为负数。
  • 分析与建议

    1. 规范使用分页查询功能,LIMIT 或 OFFSET 后的表达式计算结果必须是正数值。

E19030:16进制字串中含非法字符

  • 错误原因

    1. SQL 语句中原本表示十六进制的字符串中含有非法字符。
    2. 调用系统函数 HEXTORAW 时,输入的字符串参数中含有非法字符。
  • 分析与建议

    1. 表示十六进制的字符串字符只能由 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f(英文字母忽略大小写)组成。

E19032:不正确的16进制数('%s')

  • 错误原因

    1. 调用系统函数 HEX_DECODEDECODE_PG 时,输入的字符串参数中含有非法字符。
  • 分析与建议

    1. 表示十六进制的字符串字符只能由 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f(英文字母忽略大小写)组成。

E19037:子查询只能形如select

  • 错误原因:-

    1. 尝试使用非 SELECT 类型的子查询作为查询语句中被访问的关系节点。
  • 分析与建议

    1. 不支持的操作。

E19038:From子句中表名%s出现重复

  • 错误原因

    1. 查询语句中被访问的关系节点内部出现重复的表名。
  • 分析与建议

    1. 查询语句中被访问的关系节点内部不能出现重复的表名。

E19039:在有分组统计的语句中,输出表达式含有非分组统计项

  • 错误原因

    1. 当系统参数 def_group_by_mode = 0 时,在有分组统计(GROUP BY)的语句中,输出表达式含有既不是分组项,也不是统计项的输出项。
  • 分析与建议

    1. 输出表达式必须含有既不是分组项,也不是统计项的输出项时,需要设置 def_group_by_mode = 1。
    2. 输出表达式非必须含有既不是分组项,也不是统计项的输出项时,可删除其既不是分组项,也不是统计项的输出项。

E19041:INTO子句只能出现在UNION/INTERSECT/EXCEPT的第一个SELECT语句中

  • 错误原因

    1. 集合查询中 INTO 子句使用不规范。
  • 分析与建议

    1. 不支持的操作。

E19043:统计项不能作为分组键

  • 错误原因

    1. 分组查询的 GROUP BY 子句中,使用了统计项作为分组项。
  • 分析与建议

    1. 分组项中不能包含统计项。

E19044:分组项重复

  • 错误原因

    1. 分组查询的 GROUP BY 子句中,使用了重复的的分组项。
  • 分析与建议

    1. 分组项中不能包含重复的分组项。

E19045:排序项%s无法映射到分组

  • 错误原因

    1. 当系统参数 def_group_by_mode = 0 时,分组统计语句中指定的排序项未出现在分组项中。
  • 分析与建议

    1. 修改系统参数 def_group_by_mode = 1,可支持分组统计语句中指定的排序项不在分组项中。

E19046:排序项%s出现重复

  • 错误原因

    1. 查询语句的 ORDER BY 子句中出现重复的排序项。
  • 分析与建议

    1. ORDER BY 子句中不能出现重复的排序项。

E19048:不允许多重order by

  • 错误原因

    1. 单命令 SQL 中含有重复的 ORDER BY 子句。
  • 分析与建议

    1. ORDER BY 为最终数据排序,不允许单命令中重复进行 ORDER BY。

E19049:不允许多重For update子句

  • 错误原因

    1. 单命令 SQL 中含有多个 FOR UPDATE 子句。
  • 分析与建议

    1. 不允许单命令 SQL 中出现多个 FOR UPDATE 子句。

E19050:不允许多重Offset子句

  • 错误原因

    1. 分页查询中含有多个 OFFSET 子句。
  • 分析与建议

    1. 不允许单命令的分页查询中出现多个 OFFSET 子句。

E19051:不允许多重Limit子句

  • 错误原因

    1. 分页查询中含有多个 LIMIT 子句。
  • 分析与建议

    1. 不允许单命令的分页查询中出现多个 LIMIT 子句。

E19054:DEFERRABLE子句位置错误

  • 错误原因

    1. 表字段上为不支持延迟检查的约束指定了 DEFERRABLE 子句。
  • 分析与建议

    1. 不支持的操作。

E19055:Multiple DEFERRABLE/NOT DEFERRABLE重复出现

  • 错误原因

    1. 表字段上为支持延迟检查的约束重复指定了 DEFERRABLE/NOT DEFERRABLE。
  • 分析与建议

    1. 不支持的操作。

E19056:INITIALLY DEFERRED子句位置错误

  • 错误原因

    1. 表字段上为不支持延迟检查的约束设置 INITIALLY DEFERRED。
  • 分析与建议

    1. 不支持的操作。

E19057:INITIALLY IMMEDIATE/DEFERRED重复出现

  • 错误原因

    1. 表字段上为支持延迟检查的约束重复指定了 INITIALLY IMMEDIATE/DEFERRED。
  • 分析与建议

    1. 不支持的操作。

E19058:NOT DEFERRABLE子句位置错误

  • 错误原因

    1. 表字段上为不支持延迟检查的约束指定了 NOT DEFERRABLE。
  • 分析与建议

    1. 不支持的操作。

E19059:系统不支持字符集%s

  • 错误原因

    1. 为会话变量 CHAR_SET 设置系统不支持的字符集。
    2. 调用系统包方法 UTL_RAW.CONVERT 对 RAW 数据进行字符集转换时,参数指定了系统不支持的字符集。
    3. 调用系统函数 PINYINPINYIN1 时,输入的数据内容错误。
  • 分析与建议

    1. 建议使用系统已支持的字符集。

E19060:不正确的时间设置%s

  • 错误原因

    1. 为会话变量 TIME_ZONE 设置系统时区时,时区格式不正确。
  • 分析与建议

    1. 时区格式必须以 'GMT' 前缀开始。

E19061:不能删除DBO%s

  • 错误原因

    1. 尝试删除 SYSDBA 用户。
  • 分析与建议

    1. 不支持的操作。

E19065:游标%s未定义

  • 错误原因

    1. 尝试使用未定义的游标取数据。
    2. 尝试使用未定义的游标进行 DELETE/UPDATE 数据。
    3. PL/SQL 中的循环语句中使用了未定义的游标。
  • 分析与建议

    1. 确认游标名称是否拼写错误。
    2. 确认游标是否已经定义。

E19066:游标%s已存在

  • 错误原因

    1. 重复定义游标。
  • 分析与建议

    1. 确认游标名称是否拼写错误。
    2. 确认游标是否已经定义。

E19067:系统不支持的操作

  • 错误原因

    1. 尝试为触发器创建同义词。
    2. 尝试修改用户库/表对象不支持修改的属性。
    3. 尝试删除表对象的哈希分区。
    4. 尝试为系统表创建索引。
    5. 尝试为用户库创建触发器。
    6. 尝试通过命令删除数据库系统目录。
    7. 尝试删除数据库不支持删除的对象。
    8. 尝试使用非B树索引为分区重建索引。
    9. 尝试为含有子分区的分区重建索引。
    10. 尝试为重建索引。
    11. 尝试使用游标进行批量删除/插入/更新。
    12. 关闭流式导入功能 enable_stream_import = false 的前提下,使用流式导入。
    13. 尝试对除堆表以外的表对象使用流式导入。
    14. 尝试对自动扩展分区表使用流式导入。
    15. 针对 DBMS_METADATA.GET_DDL 的错误用法。
  • 分析与建议

    1. 根据提示进行调整。

E19068:不能对不可更改的游标%s作删除

  • 错误原因

    1. 尝试使用游标对不可删除的基表进行数据删除。
  • 分析与建议

    1. 不支持的操作。

E19070:行表达式中不允许使用操作符%s

  • 错误原因

    1. 关系表达式使用了除 '=','<>','<','<=','>','>=' 以外的操作符。
  • 分析与建议

    1. 确认表达式是否书写错误。

E19076:常数不正确

  • 错误原因

    1. PL/SQL 中,尝试使用除 'TRUE', 'T', 'FALSE', 'F', 'UNKNOW', 'U' 以外的字符串赋值给布尔类型的变量。
    2. PL/SQL 中,尝试使用除 1 和 0 以外的数字赋值给布尔类型的变量。
    3. PL/SQL 中,尝试使用除布尔类型值、整型值、字符串值以外的常量值赋值给布尔类型的变量。
    4. PL/SQL 中,尝试使用除整数值、字符串值以外的常量值赋值给 TINYINT、SMALLINT、INTEGER 类型的变量。
    5. PL/SQL 中,尝试使用除整数值、浮点数值、字符串值以外的常量值赋值给 BITINT 类型、 NUMERIC 类型、CLOB 类型或 CHAR 类型的变量。
    6. PL/SQL 中,尝试使用除整数值、浮点数值以外的常量值赋值给 FLOAT 类型或 DOUBLE 类型的变量。
    7. PL/SQL 中,尝试使用除二进制值以外的常量值赋值给 BLOB 类型的变量。
    8. PL/SQL 中,尝试使用除字符串值以外的常量值赋值给 JSON 类型、GUID 类型或 XML 类型的变量。
    9. PL/SQL 中,使用了错误的日期时间常数值赋值给日期时间类型的变量。
  • 分析与建议

    1. 结合场景做出调整。

E19077:名字超长(超过%d字节)

  • 错误原因

    1. 修改当前连接的用户身份,指定的用户名超长。
    2. 创建/修改/删除对象时,指定的对象名超长。
    3. 调用系统包方法 DBMS_METADATA.GET_DDL 时,参数指定的对象名超长。
    4. 调用系统包方法 DBMS_UTILITY.OPEN_TABLE 时,参数指定的对象名超长。
    5. 调用系统包方法 DBMS_REPLICATION.CREATE_MODIFY_SOURCE 时,参数指定的模式名或表名超长。
    6. 调用系统包方法 DBMS_REPLICATION.DROP_MODIFY_SOURCE 时,参数指定的模式名或表名超长。
  • 分析与建议

    1. 确认实参或对象名是否拼写错误。

E19078:数据版本数必须是1~3

  • 错误原因

    1. 创建表对象时,显示指定了存储副本数量,且满足 COPY_NUM < 1 或 COPY_NUM > 3。
  • 分析与建议

    1. 表对象的存储副本数量必须满足: 1 ≤ COPY_NUM ≤ 3。

E19082:找不到超类%s

  • 错误原因

    1. 创建用户自定义数据类型时,指定的超类型不存在。
  • 分析与建议

    1. 确认超类型名是否拼写错误。

E19091:错误的格式字符串%s

  • 错误原因

    1. 调用系统函数 ROUND 时,输入的表示取舍的格式字符串参数异常,其不是以字符 'Y','y','M','m','D','d','H','h','S','s' 开头。
    2. 调用系统函数 TRUNC 时,输入的表示截断的格式字符串参数异常。
    3. 调用系统函数 TO_CHAR 时(NUMERIC 转字符串),输入的格式字符串参数异常。
  • 分析与建议

    1. 参考相关章节的文档。

E19096:找不到预定义语句%s

  • 错误原因

    1. 使用预处理语句标签创建游标时,预定义语句不是查询。
  • 分析与建议

    1. 使用预处理语句标签创建游标时,标签下的预定义语句必须是查询。

E19098:rowid不正确导致定位失败

  • 错误原因

    1. 系统内部进行数据更新和数据删除时,取得的 ROWID 错误。
  • 分析与建议

    1. 存储可能异常,需联系研发人员处理。

E19099:游标%s不存在

  • 错误原因

    1. 打开游标时,无法根据给定的游标名称找到对应的游标信息,游标不存在。
    2. 使用预处理标签执行预处理语句时,无法根据给定的游标名称找到对应的游标信息,游标不存在。
  • 分析与建议

    1. 确认游标名称是否拼写错误。

E19101:Bookmark值无效

  • 错误原因

    1. 系统执行延迟检查约束时,检测到 ROWID 无效。
    2. 通过游标读取表字段数据时,检测到 ROWID 无效。
  • 分析与建议

    1. 存储可能异常,需联系研发人员处理。

E19102:游标%s未打开

  • 错误原因

    1. 尝试使用未打开的游标获取结果集。
  • 分析与建议

    1. 使用游标之前,需要先打开游标。

E19104:存在同名的预编译语句%s

  • 错误原因

    1. 尝试定义标签名重复的预处理语句。
  • 分析与建议

    1. 预处理语句的标签不可以重复。

E19105:预定义变量%s不存在

  • 错误原因

    1. 尝试使用 DEALLOCATE 取消不存在的预处理语句标签。
  • 分析与建议

    1. 确认预处理语句标签是否拼写错误。

E19106:语句%s未预定义

  • 错误原因

    1. 尝试使用未定义的预处理语句标签。
  • 分析与建议

    1. 不支持的操作。

E19111:变量无效

  • 错误原因

    1. 设置会话变量 OPTIMIZER_MODE 时,尝试指定除 "FIRST_ROWS" 和 "ALL_ROWS" 以外的值。
  • 分析与建议

    1. 会话变量 OPTIMIZER_MODE 的取值只能是 "FIRST_ROWS" 或 "ALL_ROWS"。

E19112:获取服务器信息失败

  • 错误原因

    1. 通过系统变量 SERVER_INFO 获取本机的服务器信息失败。
  • 分析与建议

    1. 检查执行程序的用户身份是否具备最高管理员权限。

E19116:单次内存分配申请超过最大限额(%dM)

  • 错误原因

    1. 单次申请内存大小超过系统参数 max_malloc_once 的配置。
  • 分析与建议

    1. 可能存在数值越界。

E19119:字符不完整

  • 错误原因

    1. 输入的命令中存在不符合当前词法设计的子句。
  • 分析与建议

    1. 按提示进行排查纠正。

E19120:注释未结束

  • 错误原因

    1. 输入的命令中存在注释信息,但注释信息不是以 "*/" 收尾。
  • 分析与建议

    1. 按提示进行排查纠正。

E19121:标识符长度超过最大长度%d

  • 错误原因

    1. 创建用户时,指定的用户名称或口令长度超过阈值。
    2. 标识符或字符串常量长度超过阈值。
    3. 调用系统包方法 DBMS_SCHEDULER.CREATE_JOB 时,传入的定时作业名称参数长度超过阈值。
  • 分析与建议

    1. 按提示做出调整。

E19123:标识符长度不能为0

  • 错误原因

    1. 输入的 SQL 命令中包含空串,且尝试使用空串作为对象名称的标识符。
  • 分析与建议

    1. 不支持的操作。

E19126:双引号不配对

  • 错误原因

    1. 输入的 SQL 命令中包含不成对的双引号,不符合词法解析规则设计。
  • 分析与建议

    1. 按提示做出调整。

E19127:单引号不配对

  • 错误原因

    1. 输入的 SQL 命令中包含不成对的单引号,不符合词法解析规则设计。
  • 分析与建议

    1. 按提示做出调整。

E19128:将空字符串用作标识符

  • 错误原因

    1. 输入的 SQL 命令中包含空串,且尝试使用空串作为对象名称的标识符。
  • 分析与建议

    1. 不支持的操作。

E19130:不能识别的词法

  • 错误原因

    1. 输入的 SQL 命令中包含不能识别的词组。
  • 分析与建议

    1. 按提示做出调整。

E19132:语法错误

  • 错误原因

    1. 期待符号: %s;遇到不可识别的符号,导致分析过程无法继续。
    2. 意外符号: '%s';操作SQL语法不正确,关键字不正确或不满足SQL标准。
  • 分析与建议

    1. 按提示做出调整。

E19137:数字字串位数太多

  • 错误原因

    1. 字符串向时间日期类型进行转换时,输入的字符串长度超长。
    2. 调用系统函数 TO_XDATE 时,输入的表示被转换的字符串实参长度超长。
    3. 调用系统函数 DATE_PART 时, 输入的表示提取部分的字符串实参长度超长。
    4. 调用系统函数 TO_DATE 时,输入的表示被转换的字符串实参长度超长。
    5. 调用系统函数 DATE_TRUNC 时,输入的表示截断部分的字符串实参长度超长。
    6. 调用系统函数 TO_TIMESTAMPZ 时,输入的表示被转换的字符串实参长度超长。
    7. 调用系统函数 MAKE_TIMESTAMPZ 时,输入的表示时区的字符串实参长度超长。
  • 分析与建议

    1. 按提示做出调整。

E19138:时间值常数错误('%s')

  • 错误原因

    1. 字符串向时间日期类型转换的场景下,输入的字符串无法转换为时间值。
    2. 调用系统函数 TO_XDATETO_DATETO_TIMESTAMPTO_TIMESTAMPZ 时,待转换的字符串实参无法转换为时间值。
  • 分析与建议

    1. 按提示做出调整。

E19139:Interval值常数错误

  • 错误原因

    1. 字符串向时间日期类型转换的场景下,输入的字符串无法转换为时间值。
  • 分析与建议

    1. 按提示做出调整。

E19140:参变量%s错误

  • 错误原因

    1. 参数变量使用不当。
  • 分析与建议

    1. 按提示做出调整。

E19141:子查询分析失败

  • 错误原因

    1. 编译 PL/SQL 中的条件表达式失败。
    2. 编译 NVL 表达式失败。
  • 分析与建议

    1. 对 SQL 中的可疑表达式做出调整。

E19142:子查询只能返回一个值

  • 错误原因

    1. 查询语句中 SUBLINK 子查询返回了多个结果列。
  • 分析与建议

    1. 不支持的操作。

E19148:游标%s是只读游标

  • 错误原因

    1. 尝试使用只读游标进行数据更新。
  • 分析与建议

    1. 不支持的操作。

E19151:字段%s不可更改

  • 错误原因

    1. 尝试对无法进行修改的属性进行修改。
  • 分析与建议

    1. 不支持的操作。

E19153:异常%s是系统预定义异常

  • 错误原因

    1. 在 PL/SQL 语句中的异常处理模块中使用了系统内部已定义的异常名。
  • 分析与建议

    1. 访问 SYS_ERR_DEFS 系统表查看系统内部已定义的异常,并在 PL/SQL 中进行规避。

E19154:异常%s已定义

  • 错误原因

    1. 在 PL/SQL 语句中的异常处理模块中定义了重复的异常名。
  • 分析与建议

    1. 将重复定义的异常名重命名。

E19155:异常编号%d已被使用

  • 错误原因

    1. 在 PL/SQL 语句中的异常处理模块中定义了重复的异常号。
  • 分析与建议:-

    1. 将重复定义的异常号重新编号。

E19156:变量%s未定义

  • 错误原因

    1. PL/SQL 中使用了未定义的变量。
  • 分析与建议

    1. 确认变量名是否拼写错误。
    2. 按提示做出调整。

E19159:不能为Cursor%s指定SQL语句

  • 错误原因

    1. 在 PL/SQL 中尝试为已定义的游标再次指定 SQL 语句。
  • 分析与建议

    1. 不支持的操作。

E19162:%s

  • 错误原因

    1. 编译 PL/SQL 中的游标、sublink、表达式、INSERT/UPDATE/DELETE/SELECT 语句失败。
  • 分析与建议

    1. 按提示做出调整。

E19163:不支持(%s>%s)运算

  • 错误原因

    1. 表达式的左右操作数类型不兼容,无法进行比较运算。
  • 分析与建议

    1. 尝试进行强制数据类型转换。

E19164:不支持(%s>=%s)运算

  • 错误原因

    1. 表达式的左右操作数类型不兼容,无法进行比较运算。
  • 分析与建议

    1. 尝试进行强制数据类型转换。

E19165:不支持(%s<%s)运算

  • 错误原因

    1. 表达式的左右操作数类型不兼容,无法进行比较运算。
  • 分析与建议

    1. 尝试进行强制数据类型转换。

E19166:不支持(%s<=%s)运算

  • 错误原因

    1. 表达式的左右操作数类型不兼容,无法进行比较运算。
  • 分析与建议

    1. 尝试进行强制数据类型转换。

E19167:不支持(%s<>%s)运算

  • 错误原因

    1. 表达式的左右操作数类型不兼容,无法进行比较运算。
  • 分析与建议

    1. 尝试进行强制数据类型转换。

E19168:不支持(%s = %s)运算

  • 错误原因

    1. 表达式的左右操作数类型不兼容,无法进行比较运算。
  • 分析与建议:-

    1. 尝试进行强制数据类型转换。

E19169:不支持(%s%s%s)运算

  • 错误原因

    1. 表达式的左右操作数类型不兼容,无法进行比较运算。
  • 分析与建议

    1. 尝试进行强制数据类型转换。

E19170:游标%s不含属性%s

  • 错误原因

    1. 在 PL/SQL 中尝试获取游标不支持的属性。
  • 分析与建议

    1. 不支持的操作。

E19171:SQL不含属性%s

  • 错误原因:-

    1. 在 PL/SQL 中尝试获取 SQL 不支持的属性。
  • 分析与建议

    1. 不支持的操作。

E19173:同名变量%s已定义

  • 错误原因

    1. 在 PL/SQL 中尝试重复定义已存在的变量。
  • 分析与建议

    1. 不支持的操作。

E19174:变量%s不可赋值

  • 错误原因

    1. 在 PL/SQL 中尝试对常量或常量表达式进行赋值。
  • 分析与建议

    1. 不支持的操作。

E19175:试图将非数组变量%s当作数组进行赋值

  • 错误原因

    1. 试图将非数组变量当作数组进行赋值。
  • 分析与建议

    1. 不支持的操作。

E19176:统计变量%s未定义

  • 错误原因

    1. 在 PL/SQL 中尝试对 FORALL 语句使用未定义的集合变量(INDICES OF)。
  • 分析与建议

    1. 不支持的操作。

E19177:统计变量标识符%s错误

  • 错误原因

    1. 在 PL/SQL 中对 FORALL 语句使用了错误的集合变量(INDICES OF)。
  • 分析与建议

    1. 不支持的操作。

E19178:For语句中变量%s不是游标

  • 错误原因

    1. 在 PL/SQL 的循环语句中使用游标方式遍历一个非游标变量。
  • 分析与建议

    1. 不支持的操作。

E19179:标号为%s的语句不是循环语句

  • 错误原因

    1. 在 PL/SQL 中使用 CONTINUE 时,指定的标签不是循环语句。
  • 分析与建议

    1. 不支持的操作。

E19181:变量个数与值个数不相同

  • 错误原因

    1. VIN 子句中变量的个数与值个数不对等。
    2. UNPIVOT 子句中列的个数与值个数不对等。
    3. SELECT .. INTO .. 子句中字段个数与变量个数不对等。
  • 分析与建议

    1. 按提示做出调整。

E19182:编译SQL失败%s

  • 错误原因

    1. 编译 PL/SQL 中的 DML 语句失败。
  • 分析与建议

    1. 按提示做出调整。

E19183:未定义异常%s

  • 错误原因

    1. 在 PL/SQL 中进行异常处理时,使用了未定义的异常名。
  • 分析与建议

    1. 不支持的操作。

E19193:数组扩展失败(超过数组最大容量)

  • 错误原因

    1. 在 PL/SQL 中对数组类型的变量使用 EXTEND 进行扩展时,扩展失败。
  • 分析与建议

    1. 使用合理的尺度进行数组容量扩展。

E19196:命令长度超过最大允许长度%d

  • 错误原因

    1. 用户向数据库服务端发起字符串长度大于阈值的 SQL 请求。
  • 分析与建议

    1. 控制 SQL 请求的字符串长度。

E19198:数据存贮体正在进行切换操作

  • 错误原因

    1. enable_read_copy2 = false,数据存储的主版本无效。
    2. enable_read_copy2 = true,数据存储的所有版本均无效。
  • 分析与建议

    1. 重启服务或等候存储修复。

E19199:update操作不能正确定位行

  • 错误原因

    1. 执行 UPDATE 语句过程中,ROWID无效导致定位失败。
  • 分析与建议

    1. 显示指定的 ROWID 定位表达式异常。

E19200:只读隔离级别不能启动非只读命令

  • 错误原因

    1. 在只读级别的会话上尝试执行非只读事务。
  • 分析与建议

    1. 通过修改会话参数 TRANS_READONLY = false 关闭当前会话上只能执行只读事务。
    2. 通过修改会话参数 ISO_LEVELSESSION_ISO_LEVEL)修改事务隔离级别。

E19201:无法转化为SQL语句

  • 错误原因

    1. 在语法节点向 SQL 命令串转换的过程中遇到个别不支持转换的常量表达式。
  • 分析与建议

    1. 绕开或规避不支持转换的常量表达式。

E19206:delete操作不能正确定位行

  • 错误原因

    1. 执行 DELETE 语句过程中,ROWID无效导致定位失败。
  • 分析与建议

    1. 显示指定的 ROWID 定位表达式异常。

E19207:精度或标度下标值太大

  • 错误原因

    1. 定义 TIMESTAMP、TIME、DATETIME 等时间类型时,显示指定的精度大于 10。
    2. 定义 INTERVAL SECOND 时间类型时,显示指定的精度大于 12。
  • 分析与建议

    1. 按提示做出精度调整。

E19208:ESCAPE 表达式错误

  • 错误原因

    1. 模糊匹配的 LIKE、NOTLIKE 子句中,ESCAPE 指定了空串或多个字符作为转义字符。
  • 分析与建议

    1. 模糊匹配中使用 ESCAPE 只能指定一个转义字符。

E19209:LIKE表达式ESCAPE序列错误

  • 错误原因

    1. 模糊匹配的 LIKE、NOTLIKE 子句中,模糊匹配表达式中非正确方式使用 ESCAPE 指定的转义字符。
  • 分析与建议

    1. 模糊表达式中的转义字符后只能跟 '%'、'_' 和转义字符自身。

E19210:TRIM字符数不是1

  • 错误原因

    1. 调用系统函数 TRIM 时,对源字符串首尾进行清理的字符被指定多个。
  • 分析与建议

    1. 调用 TRIM 对源字符串首尾进行清理时,只能指定一个字符。

E19212:代码编译错误

  • 错误原因

    1. 编译 JOB、包、存储过程/函数、触发器、用户自定义类型时不通过。
  • 分析与建议

    1. 按提示做出调整。

E19213:分配系统全局区内存失败

  • 错误原因

    1. 当前节点的系统全局区内存耗尽。
    2. 当前节点已使用的系统全局区内存总量达到阈值(max_hash_mem)。
  • 分析与建议

    1. 查询优化。
    2. 增配系统全局区内存(system_sga_mem)。

E19215:排序项%s未出现在distinct列中

  • 错误原因

    1. 去重查询的输出字段中不包含排序字段。
  • 分析与建议

    1. 不支持的操作。

E19216:正则表达式错误(%d:%s)

  • 错误原因

    1. 调用系统函数 REGEXP_LIKE 进行正则匹配时,参数输入的正则表达式异常。
    2. 调用系统函数 REGEXP_INSTR 进行正则匹配时,参数输入的正则表达式异常。
    3. 调用系统函数 REGEXP_SUBSTR 进行正则匹配时,参数输入的正则表达式异常。
    4. 调用系统函数 REGEXP_REPLACE 进行正则匹配时,参数输入的正则表达式异常。
    5. 调用系统函数 REGEXP_COUNT 进行正则匹配时,参数输入的正则表达式异常。
  • 分析与建议

    1. 调整正则表达式。

E19217:不支持对复合合类型成员进行更改

  • 错误原因

    1. 尝试对复合数据类型的成员进行 UPDATE 操作。
  • 分析与建议

    1. 不支持的操作。

E19218:PreparedStatement个数超过限制%d

  • 错误原因

    1. 单个会话连接上创建的预处理语句数超过 max_prepare_num 配置的阈值。
  • 分析与建议

    1. 控制连接会话上创建的预处理语句数量。
    2. 扩大 max_prepare_num 配置。

E19219:隔离级取值错误(应界于0~3)

E19223:包ID已达到最大分配额度1M

  • 错误原因

    1. 当前用户库下新建的用户自定义包数量已达上限。
  • 分析与建议

    1. 当前用户库已无法再新建包。

E19224:Connect by 表达式错误

  • 错误原因

    1. 层次查询中的 CONNECT BY 表达式使用了常量表达式或聚合函数。
  • 分析与建议

    1. 不支持的操作。

E19225:Start with 表达式错误

  • 错误原因

    1. 层次查询中的 START WITH 表达式使用了伪字段或聚合函数·。
  • 分析与建议

    1. 不支持的操作。

E19226:非法的PRIOR表达式

  • 错误原因

    1. 层次查询中非法使用 PRIOR 表达式。
  • 分析与建议

    1. 不支持的操作。

E19227:非法的层次树伪字段表达式

  • 错误原因

    1. 层次查询中非法使用伪字段表达式。
  • 分析与建议

    1. 不支持的操作。

E19228:层次树出现循环

  • 错误原因

    1. 数据模型中的父子关系形成闭环,导致查询无法正常终止。
  • 分析与建议

    1. 调整层次查询语句。

E19229:层次树深度不能超过1024

  • 错误原因

    1. 层次树数据模型的深度超过 1024。
  • 分析与建议

    1. 调整层次查询语句。

E19230:字段(col_no:%d,col_name:%s)值错误(%s)

  • 错误原因

    1. 针对 DML 语句中表达式的在计算阶段执行失败。
  • 分析与建议

    1. 按提示做出调整。

E19231:SQL处理过程(%s)中递归栈超过%d

  • 错误原因

    1. 常见于与或表达式节点数量连续且超过阈值。
  • 分析与建议

    1. 优化 SQL 中的表达式结构(表达式的解析采用递归方式进行,此限制为防止递归深度过深导致线程栈内存被耗尽)。

E19232:SQL集合运算超过%d

  • 错误原因

    1. 集合查询连续嵌套,层次过深。
  • 分析与建议

    1. 优化查询(集合查询的解析采用递归方式进行,此限制为防止递归深度过深导致线程栈内存被耗尽)。

E19233:SQL路径层次超过%d

  • 错误原因

    1. SQL 连续嵌套,层次过深。
  • 分析与建议

    1. SQL 优化(此限制为防止递归深度过深导致线程栈内存被耗尽)。

E19234:指定的时间限制无效,有效范围[0,10s]

  • 错误原因

    1. 调用系统函数 SLEEP 时,指定的参数值 > 10000 且参数值 < 0。
  • 分析与建议

    1. 调整实参值至合理范围内。

E19235:无效的 USERENV 参数

  • 错误原因

    1. 调用系统函数 USERENV 时,给定的实参无效或不支持。
  • 分析与建议

    1. USERENV 的实参可以是 SESSIONID、SESSION_USER、SESSION_USERID、SID、CURRENT_USER、CURRENT_USERID、IP_ADDRESS、ISDBA、LANG、LANGUAGE 和 PID。

E19236:PRAGMA EXCEPTION_INIT中有未定义的异常错误%s

  • 错误原因

    1. PL/SQL 中使用 EXCEPTION_INIT 绑定的异常还未定义。
  • 分析与建议

    1. PL/SQL 中使用 EXCEPTION_INIT 绑定异常时,被绑定的异常变量必须是提前定义。

E19238:表达式不支持WITH语句

  • 错误原因

    1. DELETE 语句中使用了 WITH 子句。
    2. MERGE INTO 语句中使用了 WITH 子句。
    3. UPDATE 语句中使用了 WITH 子句。
  • 分析与建议

    1. 不支持的操作。

E19239:不允许使用本地临时表%s

  • 错误原因

    1. 视图定义中使用了本地临时表。
    2. 存储过程或函数中使用了本地临时表。
  • 分析与建议

    1. 不支持的操作。

E19240:任务工作内存超过最大值(%dM)

  • 错误原因

    1. 层次树业务场景下任务线程内存超过系统参数 max_task_mem 设定的阈值。
  • 分析与建议

    1. 优化查询,避开层次过深的层次树查询。

E19241:连接表或子查询个数超过%d,请用join关键字重写

  • 错误原因

    1. 单个查询语句中访问涉及到的表数量超过系统参数 select_table_num 配置的阈值。
  • 分析与建议

    1. 优化查询,减少访问表的数量。

E19242:此处不允许使用统计函数

  • 错误原因

    1. 聚合函数在除排序分组场景以外的禁用场景下使用。
  • 分析与建议

    1. 不支持的操作。

E19243:Cursor个数超过系统最大限制数%d

  • 错误原因

    1. 单个连接上创建的游标数量超过系统参数 max_cursor_num 配置的阈值。
  • 分析与建议

    1. 严控连接上的游标数量,合理利用资源。

E19245:不允许使用子查询

  • 错误原因

    1. 默认值表达式中使用了子查询。
    2. 值检查约束表达式中使用了子查询。
    3. 用户自定义变量使用了子查询。
  • 分析与建议

    1. 不支持的操作。

E19246:IN表达式参数超过%d个

  • 错误原因

    1. 单个 IN 子句中出现的参数个数超过阈值。
  • 分析与建议

    1. 控制 IN 子句中出现的参数数量。

E19250:编码方式不能为空

  • 错误原因

    1. 调用系统函数 ENCODE_PGDECODE_PG 时,编码算法参数指定空串。
  • 分析与建议

    1. 调用系统函数 ENCODE_PGDECODE_PG 时,必须指定算法参数,其参数值可以是 'BASE64'、'ESCAPE'、'HEX' 等。

E19251:BASE64解码错误:%s

  • 错误原因

    1. 调用系统函数 BASE64_DECODE 时,解码序列中出现无效字符、意外字符或无效的结束序列。
    2. 调用系统函数 DECODE_PG 使用 BASE64 解码算法进行解码时,解码序列中出现无效字符、意外字符或无效的结束序列。
  • 分析与建议

    1. 参与解码的内容可能与解码算法不匹配。

E19252:无效的16进制数据:奇数位数

  • 错误原因

    1. 调用系统函数 DECODE_PG 使用 HEX 解码算法进行解码时,输入的字符串中的字符数为奇数。
    2. 调用系统函数 HEX_DECODE 对十六进制字符串进行解码时,输入的字符串中的字符数为奇数。
  • 分析与建议

    1. 参与解码的字符串中的字符数必须是偶数。

E19253:无效的%s类型输入语法

  • 错误原因

    1. 调用系统函数 DECODE_PG 使用 ESCAPE 解码算法进行解码时,参加解码的数据含有无效的输入。
  • 分析与建议

    1. 按提示做出调整。

E19254:尝试更新同一行

  • 错误原因

    1. 尝试对同一行数据重复更新。
  • 分析与建议

    1. 不支持的操作。

E19255:SPLIT_PART函数子串位置参数不能为零

  • 错误原因

    1. 调用系统函数 SPLIT_PART 时,位置参数指定为 0。
  • 分析与建议

    1. 不支持的操作。

E19256:位串中含非法字符

  • 错误原因

    1. 使用表示二进制的字符串向二进制数据转换时,字符串内包含非法字符(非 '0' 和 '1' 的字符)。
  • 分析与建议

    1. 涉及位字符串向二进制数据转换的场景下,确保输入的位串格式正确。

E19257:类型精度不能小于1

  • 错误原因

    1. 定义带精度的 BIT、BIT VARING 和 VARBIT 数据类型时,给定的精度小于 1。
  • 分析与建议

    1. 不支持的用法。

E19258:类型精度不能大于%d

  • 错误原因

    1. 定义带精度的 BIT、BIT VARING 和 VARBIT 数据类型时,给定的精度大于行记录的最大长度。
  • 分析与建议

    1. 不支持的用法。

E19260:期待符号: %s

  • 错误原因

    1. SQL 命令不符合现有语法设计,实际与期望不符。
  • 分析与建议

    1. 按提示做出调整。

E19261:缺少符号: %s

  • 错误原因

    1. SQL 命令不符合现有语法设计,可能存在内容缺失。
  • 分析与建议

    1. 按提示做出调整。

E19262:意外符号: '%s'

  • 错误原因:-

    1. SQL 命令不符合现有语法设计,可能存在冗余内容。
  • 分析与建议

    1. 按提示做出调整。

E19263:标识符不能使用回车换行符

  • 错误原因

    1. SQL 命令中的标识符含有 '\r' 或 '\n' 字符。
  • 分析与建议

    1. 不支持的用法。

E19264:此函数或运算符不支持类型 %s

  • 错误原因

    1. 对不支持排序(数据类型无比较函数)的数据尝试进行数据去重。
  • 分析与建议

    1. 不支持的操作。

E19265:字符串长度不允许小于等于零

  • 错误原因

    1. 调用系统函数 OVERLAY 时,指定被替换字符串的起始位置小于等于 0。
  • 分析与建议

    1. 调用 OVERLAY 进行字符串替换时,指定的被替换字符串的起始位置必须大于 0。

E19266:不是单组分组函数

  • 错误原因

    1. def_group_by_mode = 0 时,查询语句中不存在 GROUP BY 子句,且窗口函数与聚合函数同时存在。
  • 分析与建议

    1. 在原 SQL 基础之上添加 GROUP BY 子句。

E19267:与 GROUP BY 表达式不匹配

  • 错误原因

    1. def_group_by_mode = 0 时,窗口函数与聚合函数同时存在,查询语句的排序项不是输出项。
  • 分析与建议

    1. 在原 SQL 基础之上,修改 GROUP BY 子句中的排序项为输出项目。

E19268:密码算法计算错误

  • 错误原因

    1. pass_mode = 4 时,系统初始化生成系统用户密码错误。
    2. 调用系统包方法 DBMS_CRYPTO.RANDOMNUMBER 时,随机数生成算法计算错误。
    3. 调用系统包方法 DBMS_CRYPTO.RANDOMINTEGER 时,随机数生成算法计算错误。
    4. 调用系统包方法 DBMS_CRYPTO.RANDOMBYTES 时,随机数生成算法计算错误。
    5. 系统内部的 OPENSSL 各类加密算法上下文初始化失败。
  • 分析与建议

    1. 核实操作系统上的 OPENSSL 版本,联系内核研发人员进行协助。

E19269:PIVOT子句中存在非聚合表达式

  • 错误原因

    1. 行列转换 PIVOT 子句中缺失聚合项。
    2. 行列转换 PIVOT 子句中使用了多参数版本的 GROUP_CONCAT 聚合项。
    3. 行列转换 PIVOT 子句中聚合项的实参部分使用了参数表达式。
  • 分析与建议

    1. 不支持的操作。

E19270:PIVOT子句中禁用WINDOW函数

  • 错误原因

    1. 行列转换 PIVOT 子句中含有开窗函数。
  • 分析与建议

    1. 不支持的操作。

E19275:OpenSSL内部错误:%s

  • 错误原因

    1. 进行加密算法 SHA1、SHA224、SHA256、SHA384、SHA512、MD4、MD5 计算失败。
  • 分析与建议

    1. 核实操作系统上的 OPENSSL 版本,联系内核研发人员进行协助。