使用类型注释时的 JDBI 查询?
JDBI query when using type annotations?
我正在编写一个需要连接到数据库的 Dropwizard 应用程序,并使用 SQL objects to query the DB, per the Dropwizard docs。
我 运行 遇到的问题是当我的查询使用的类型说明符 (::
) 被混淆为绑定变量时。像
SELECT
(a,
b,
c)::user_type
FROM ...
WHERE id = :id
解析器正在读取 ::user_type
作为参数占位符。当我用 \
转义它们时,它说查询没有返回任何行,但是如果我 运行 通过 psql
查询,它会返回,所以我猜它不是很简单。任何帮助将不胜感激。
谢谢! :D
最简单的解决方案是只使用 SQL-标准 CAST
语法而不是 PostgreSQL 扩展 ::
语法。
CAST (c AS user_type)
我正在编写一个需要连接到数据库的 Dropwizard 应用程序,并使用 SQL objects to query the DB, per the Dropwizard docs。
我 运行 遇到的问题是当我的查询使用的类型说明符 (::
) 被混淆为绑定变量时。像
SELECT
(a,
b,
c)::user_type
FROM ...
WHERE id = :id
解析器正在读取 ::user_type
作为参数占位符。当我用 \
转义它们时,它说查询没有返回任何行,但是如果我 运行 通过 psql
查询,它会返回,所以我猜它不是很简单。任何帮助将不胜感激。
谢谢! :D
最简单的解决方案是只使用 SQL-标准 CAST
语法而不是 PostgreSQL 扩展 ::
语法。
CAST (c AS user_type)