1

我正在尝试处理 Postgres 错误。如果用户发送无效的 uuid - Postgres 返回错误消息:pq: invalid input syntax for type uuid:...

所以,我想检查那个错误,如果错误等于无效的输入语法错误——我想向客户端显示 404 错误,而不是返回服务器错误。

但是我在 Postgres 库中找不到返回的错误的定义错误类型...

有人可以建议我,返回的错误在哪里?

4

1 回答 1

0

在查询中,您可以将该uuid列强制转换为text. 这里有两种方法可以做到这一点:

SELECT * FROM user WHERE id::text = 'sometext'
SELECT * FROM user WHERE text(id) = 'sometext'

还在这里讨论: https ://stackoverflow.com/a/46494463/2316115

PostgreSQL 类型转换记录在这里: https ://www.postgresql.org/docs/current/sql-expressions.html#SQL-SYNTAX-TYPE-CASTS

于 2021-10-24T10:41:43.207 回答