PostgreSQL 错误码

说明

KWDB 扩展了 PostgreSQL 错误码消息。对一些 PGcode 而言,同一错误码可能对应多条消息。这些消息内容存在部分差异,但导致错误的根本原因是一致的,因此属于同一种类型错误。目前,下表中的消息列只列出了 PGcode 原始的错误码对应的消息,并未包含 KWDB 定制的消息。建议用户根据错误码来查找和定位原因并采取相应的措施。

KWDB 采用部分 PostgreSQL 错误码。此外,一些 KWDB 专有错误码也兼容 PGcode。

本文介绍 KWDB 使用的 PostgreSQL 错误码,列出产生错误的根本原因,并提出相关建议措施。

错误码消息错误原因建议措施
08P01ProtocolViolation网络通信协议错联系售后支持人员
0A000FeatureNotSupported功能不支持
0LP01InvalidGrantOperation授权操作不正确修改 SQL 语句后重试
1000Warning此报错信息为告警
21000CardinalityViolation基数校验出错联系售后支持人员
22000DeleteFailure数据删除失败或部分失败重启服务后查询表数据,或者查询日志了解数据删除情况
22001StringDataRightTruncation字符串数据右侧被删减修改 SQL 语句后重试
22003NumericValueOutOfRange数值表达式超出边界修改 SQL 语句后重试
22004NullValueNotAllowed非法空值修改 SQL 语句后重试
22005InvalidEscapeSequence转义序列错误修改 SQL 语句后重试
22007InvalidDatetimeFormat时间格式不正确修改 SQL 语句后重试
22008DatetimeFieldOverflow时间类型字段溢出联系售后支持人员
22012DivisionByZero除数为 0修改 SQL 语句后重试
22013InvalidWindowFrameOffset窗口偏移量非法修改 SQL 语句后重试
2201EInvalidArgumentForLogarithmLog 函数参数错误修改 SQL 语句后重试
22021CharacterNotInRepertoire不可编码的未知字符检查输入的字符是否符合 UTF8 规范
22023InvalidParameterValue参数值非法修改 SQL 语句后重试
22026StringDataLengthMismatch字符串数据长度不匹配修改 SQL 语句后重试
2202EArraySubscript数组下标错误修改数组下标值后重试
22C01ScalarOperationCannotRunWithoutFullSessionContext当前会话中无法处理此标量表达式修改 SQL 语句后重试
22P02InvalidTextRepresentation文本表达式不正确修改 SQL 语句后重试
22P03InvalidBinaryRepresentation二进制表达式有错修改 SQL 语句后重试
22P05UntranslatableCharacter字符串无法正确编码修改 SQL 语句后重试
23502NotNullViolation违反非空定义修改 SQL 语句后重试
23503ForeignKeyViolation外键冲突修改 SQL 语句后重试
23505UniqueViolation违法唯一约束修改 SQL 语句后重试
23514CheckViolation违反约束修改 SQL 语句后重试
25000InvalidTransactionState事务状态非法提交或回滚当前事务后重试
25001ActiveSQLTransaction不支持在事务中间使用 DISCARD 命令不要在事务中间使用 DISCARD 命令
25006ReadOnlySQLTransaction当前事务为只读事务启动读写事务后重试
25P02InFailedSQLTransaction当前事务已发生错误结束当前事务,开始新的事务并重试
25P03NullTransaction事务标识符为空修改 SQL 语句后重试
26000InvalidSQLStatementName非法查询语句定义修改 SQL 语句后重试
28P01InvalidPassword密码不合法修改 SQL 语句后重试
2BP01DependentObjectsStillExist依赖对象仍然存在根据提示,解决依赖问题后重试
34000InvalidCursorName不正确的游标名修改 SQL 语句后重试
3B001InvalidSavepointSpecification检查点定义不正确修改 SQL 语句后重试
3D000InvalidCatalogName模式命名出错修改 SQL 语句后重试
3D000UndefinedDatabase未定义数据库修改 SQL 语句后重试
3F000InvalidSchemaName非法模式名称修改 SQL 语句后重试
42501InsufficientPrivilege权限不足向管理员申请权限后重试
42601Syntax语法错误修改 SQL 语句后重试
42602InvalidName引用对象名称不正确修改 SQL 语句后重试
42611InvalidColumnDefinition不正确的列定义修改 SQL 语句后重试
42622NameTooLong名称过长修改 SQL 语句后重试
42701DuplicateColumn存在重复列修改 SQL 语句后重试
42702AmbiguousColumn列名指代不明确修改 SQL 语句后重试
42703UndefinedColumn未定义列修改 SQL 语句后重试
42704UndefinedObject未定义对象修改 SQL 语句后重试
42710DuplicateObject存在重复对象修改 SQL 语句后重试
42711DuplicateParameter存在重复参数修改 SQL 语句后重试
42723DuplicateFunction存在重复函数修改 SQL 语句后重试
42725AmbiguousFunction函数名指代不明确修改 SQL 语句后重试
42803Grouping分组操作语法错误修改 SQL 语句后重试
42804DatatypeMismatch数据类型不匹配修改 SQL 语句后重试
42809WrongObjectType对象类型错误修改 SQL 语句后重试
42830InvalidForeignKey非法外键修改 SQL 语句后重试
42846CannotCoerce强制转换出错修改 SQL 语句后重试
42883UndefinedFunction未定义函数修改 SQL 语句后重试
42939ReservedName非法使用保留关键字修改 SQL 语句后重试
42C02SyncObjectFailed数据对象同步错误联系售后支持人员
42C03WrongExpr表达式错误修改 SQL 语句后重试
42C04NumberMismatch属性值个数不匹配修改 SQL 语句后重试
42P01UndefinedTable未定义表修改 SQL 语句后重试
42P02UndefinedParameter未定义参数修改 SQL 语句后重试
42P04DuplicateDatabase存在重复数据库修改 SQL 语句后重试
42P06DuplicateSchema存在重复模式名修改 SQL 语句后重试
42P07DuplicateRelation存在重复表修改 SQL 语句后重试
42P08AmbiguousParameter参数指代不明确修改 SQL 语句后重试
42P09AmbiguousAlias别名指代不明确在查询语句中使用明确的别名
42P10InvalidColumnReference不正确的列引用修改 SQL 语句后重试
42P15InvalidSchemaDefinition非法模式定义修改 SQL 语句后重试
42P16InvalidTableDefinition表定义不正确修改 SQL 语句后重试
42P17InvalidObjectDefinition对象定义不正确修改 SQL 语句后重试
42P18IndeterminateDatatype未识别的数据类型修改 SQL 语句后重试
42P20Windowing窗口函数语法不正确修改 SQL 语句后重试
53200OutOfMemory内存耗尽联系售后支持人员
54000ProgramLimitExceeded用户使用的字符串超过最大值修改 SQL 语句后重试
54011TooManyColumns列数量过多修改 SQL 语句后重试
54021TooWideRowWidth行宽过大修改 SQL 语句后重试
54022InsertColumnMismatch插入列不匹配修改 SQL 语句后重试
54024TooWideTagWidth属性名称过长修改 SQL 语句后重试
55000ObjectNotInPrerequisiteState对象操作不满足前置条件根据提示,解决依赖问题后重试
55006ObjectInUse对象在使用中终止占用对象操作后重试
55P02CantChangeRuntimeParam当前不可更改运行时参数在数据库离线状态下重试
57P03CannotConnectNow数据库不可连接等待数据库进入服务状态后重试
58C00RangeUnavailable键值分区错误联系售后支持人员
58C01InternalConnectionFailure内部连接错误联系售后支持人员
XX000Internal数据库内部错误联系售后支持人员
XXC01CCLRequired任务完成需要使用 CCL联系售后支持人员