问题标签 [nativequery]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3372 浏览

jpa - 为什么需要在 JPA 原生查询中转义反斜杠?

在 JPA 中,执行本机查询时,我必须将反斜杠字符转义为双反斜杠。例如,当有一个 where 子句时

然后我需要创建一个字符串,其中包含:

然后我使用 openJPA 2.2.2 运行本机查询:

SQL 语句是从 XML 文件中读取的,因此这里没有进行 Java 转义。此外,我在调试过程中验证了 Java 中的字符串与 XML 文件中的字符串完全相同。

为什么 JPA 期望本机查询使用双反斜杠?这是 openJPA 中的错误吗?

0 投票
1 回答
806 浏览

sql - OpenJPA:JPQL 与本机查询

我在工作中使用 OpenJPA。有时我必须使用 JPQL,有时我必须使用本机查询(em.createNativQuery)。

我目睹了本机查询的一个大问题。我也必须提供架构名称。

就像 JPQL 我可以写:

但在本机查询的情况下,我需要这样做:

为什么会这样?这不是错误的行为,因为模式名称可能会随时间而变化。

0 投票
2 回答
1166 浏览

java - JPA nativeQuery 返回缓存的结果列表

我有以下课程:

公司类别:

和 Employee.class

Company 的 Score 列在数据库中始终为空,并且从未通过 dao 更新,因为还有其他表包含每个唯一对 Company-Employee 的分数。我需要 Score 的值,仅适用于我通过 id 获取 Employee 的情况,因此在这种情况下,Set 中的所有 Company 实例都应该包含 score,因此我将获得 Employee-Company 分数对,其中员工是 Employee。我有以下代码来实现这一点:

而公司道包含方法:

问题是,虽然在数据库中执行它不是空的,但它getByEmpId(id)给出了一个为空的ResultList位置。company.score

我怀疑有一些缓存介入,所以我尝试从本机查询中删除一些列,并且它应该在映射时调用一个异常,并显示“未找到列”(或类似)消息,但这种方法仍然提供List<Company>所有字段尽管 Hibernate 在控制台中打印出我所做的所有更改的本机查询,但在他们的位置上。我在这里做错了什么以及如何实现我的需要?谢谢你。

0 投票
2 回答
957 浏览

mysql - 如何使工作 SQL 查询成为 Spring Data 中的本机查询

我创建了一个 SQL 查询:

SELECT ORDER_NUM, STUFF2, STUFF3 FROM table1 t1 WHERE (STUFF3 = 'poor') AND NOT EXISTS (SELECT ORDER_NUM FROM table2 t2 WHERE t1.ORDER_NUM = t2.ORDER_NUM)

查询正常工作,我得到了想要的结果;但是,我现在尝试使用@Query注释在我的 spring 数据应用程序中将此工作查询用作本机查询。

我复制了完全相同的查询并将其放在我的存储库中(如上所示),但该值绑定为 NULL,并且没有显示任何记录。我是否缺少使此查询与我的 Spring 应用程序一起使用的步骤?

0 投票
1 回答
894 浏览

java - 从本机查询和转换中检索数据

我有以下查询

据我所知,它返回字符串列表?由于我得到的错误

原因:java.lang.ClassCastException:java.lang.String 无法在 utils.SessionFacade.copyPlayersToDetails(SessionFacade.java:105) 处转换​​为实体。

抛出错误的类与返回播放器字符串的查询一起工作正常,例如从播放器返回 *

我必须如何转换此方法或如何(如果可能)将存储在此字符串列表中的这些值放入 JSF 页面,以便检索查询结果?

0 投票
0 回答
162 浏览

java - 如何从具有来自多个实体的数据的 nativeQuery 中检索数据

我有从多个实体返回数据的查询

从从一个实体返回数据的查询中检索数据相对简单,可以这样完成

}

问题是当查询存​​储来自多个实体的数据时如何做到这一点?

0 投票
1 回答
125 浏览

java - NativeQuery 或 HibernateOGM 方法更好

我正在使用休眠 OGM 与我的 MongoDB 实例对话。我必须得到一个包含 category 的所有产品的列表"abc"。我正在使用本机查询方法来实现这一点,如下所示:

我不确定这是否是正确的方法,因为我看到了太多的硬编码(查看集合名称)。我可以使用该.find()方法来实现相同的目标吗?我们使用带有 gradle 的 vertx 服务器作为构建工具。

0 投票
1 回答
871 浏览

mongodb - 使用 NativeQuery 的 MongoDB 聚合

我正在尝试使用 NativeQuery 在 mongoDB 中进行简单的聚合。可能吗?我做了很多测试,但我找不到解决方案。查询是:

错误是:“无法规范化查询:BadValue 未知顶级运算符:$match”

MongoDB 3.0版

休眠-ogm-mongodb 4.2.0

0 投票
1 回答
3104 浏览

php - 如何在 Doctrine 本机查询的结果中获取非映射列

如何从本机查询的结果中获取非映射列?

我的查询:

score未映射到实体中,我无法从 Twig 访问它的值。是否可以仅为此查询将此列添加到实体中?

0 投票
1 回答
320 浏览

java - 如何使用 JPA 和 EclipseLink 为 2 个(或更多)数据库命名本机查询

如何为 2 个数据库命名本机查询并让 EclipseLink 在数据库上运行正确的查询?

我举个例子:我有一个可以在 Oracle Db 和 PostgreSQL 上运行的解决方案。需要在 db 上运行本机查询。因此,Oracle 的本机查询与 PostgresSQL 的本机查询不同。如何将它们作为命名查询放在 orm.xml 中,然后让 EclipseLink 根据运行时环境在每个数据库上运行正确的查询。

每个数据库都应该有替代的 orm 文件吗?不允许存储过程/数据库函数和类似的东西。所以我必须命名本地查询。