postgresql - QueryDSL sql和UUID参数类型

标签 postgresql querydsl

我将 QueryDSL SQL 与 PostgresTemplates 一起使用,我试图将 UUID 参数放入查询中,但是当我执行此查询时:

UUID uuid = UUID.randomUUID();
QOrganization org = QOrganization.organization;
long count = new SQLQuery(connection, configuration)
            .from(org)
            .where(org.id.eq(uuid))
            .count();

数据库提示:

org.postgresql.util.PSQLException: there is no operator does not exist: uuid = character varying

如何显式转换我的 UUID 参数?

最佳答案

Querydsl SQL 通过setString 将当前的UUID 类型映射到PreparedStatements。看起来 Postgres 支持直接通过 setObject 设置 UUID,因此似乎需要对 Querydsl SQL 中的 UUID 支持进行一些调整。

关于postgresql - QueryDSL sql和UUID参数类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25485206/

相关文章:

java - 如何使用 QueryDSL 将结果投影中的空值设置为零

maven-plugin - "Either processor or processors need to be given"运行时 "mvn apt:process"

elasticsearch - 如何在Elasticsearch 6.3中找到哪个碎片超过30Gb

spring - 通用代码因 Spring 数据和 Querydsl 失败

sql - 具有多个 JOINS 的嵌套 SELECT

java - 如何阻止 findbugs-maven-plugin 验证 querydsl 生成的类

java - 错误 : extra data after last expected column When trying to inserting csv file

mysql - 当我将数据库从 sqlite 迁移到 Postgresql 或其他数据库时,是否需要更改 Rails 中的代码

sql - postgresql最后插入id并发

regex - 匹配法语字符