首页 > 解决方案 > 在哪里可以找到 PGSQL 错误代码列表?

问题描述

我在我的应用程序中收到如下消息:

提示:没有函数匹配给定的名称和参数类型。您可能需要添加显式类型转换。(代码:52461700,sql 状态:42883,查询:SELECT ...

我知道在哪里可以找到“sql state”字段的枚举,但是 52461700 的“代码”来自哪里?我在 PostgreSQL GiHUb 镜像中搜索了十进制和十六进制的代码,但什么也没找到。是否有枚举、头文件、表格等,我可以在其中找到所有报告的“代码”值的列表?

标签: postgresql

解决方案


我得到了一个在这里比我更长的人的答案:数字代码只是SQLSTATE,打包成6位编码,即数字代码52461700可以扩展为varchar'42883'。这是为了满足某些需要数字代码而不是字符串的客户的需求。像我的 Java 应用程序这样的现代客户端可以使用其中一个,但应该使用字符串,因为它更标准,而且数字并没有像我最初想的那样提供更多细节。

我最初发布这个问题是因为谷歌搜索数字代码确实会出现一小组 Java 和 Ruby 输出,但看起来 Laurenz Albe 是正确的,有一个修改过的中间件添加了这个错误代码。


推荐阅读