问题标签 [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 回答
1470 浏览

jpa - nativequery 的替代命名查询

我需要在 jpa 中将我的查询从native-query更改为(named-query 或 create-query )。

此查询返回所有表名(表名外键引用此表 (sampleTable1))。

当我更改 createQuery 或 namedQuery 时出现错误。

如何将此查询更改为 namedQuery 或 createQuery。有可能吗?

以下错误,当我使用 createquery

帮助我,提前谢谢。

0 投票
4 回答
5160 浏览

mysql - Hibernate 本机查询在同一个表上具有多个联接返回错误结果

我正在使用本机 sql 查询,其中我有一个球员表,我加入了三次,首先获取击球手姓名,然后获取投球手姓名,然后获取外野手姓名。现在第一个连接有效,但接下来的两个也返回相同的名称,即击球手名称。

这是sql查询

我没有为所选列使用别名,因为当我这样做时,hibernate 为我使用别名的任何列抛出异常

请求处理失败;嵌套异常是 javax.persistence.PersistenceException:org.hibernate.exception.SQLGrammarException:无法执行查询],根本原因是 java.sql.SQLException:找不到列“over_no”。

当我在我的 mysql 客户端上运行它并返回正确的数据集时,这个查询正在工作,但是当我在我的代码中运行它时,结果集以某种方式覆盖了 ref_player 表上的两个后续连接,让我在所有三列中都有击球手的名字,即 batsman.sname、outBy.sname 和 fielder.sname 列中的相同名称。

最近两天我被困在这里,请任何帮助都会很棒。

0 投票
2 回答
3566 浏览

hibernate - 使用带有 return-join 的 Hibernate 本机查询复制行

我正在使用 Hibernate (3.3.x),我有两个实体:

(为简单起见,省略了其他属性和设置器)。

我有一个本地查询:

该查询应该(我希望它)为 pkgDtl 中的每个项目返回一行,并填写 FtChargeAcctPkgDtl#ftChargeAcctPkgRates。但实际上它为 ft_charge_acct_pkg_rate 中的每个项目返回一行。

假设主(pkgDtl)表中有 5 行,连接的表中有 50 行(单个 pkgDtl 的平均 10 pkgRates)。当我使用调用查询时

我得到50行。然而,其中 45 个是重复的。我想得到这 5 个 pkgDtls 并且每个都填入 pkdRates。有没有办法在休眠中做到这一点?

0 投票
2 回答
2054 浏览

java - Eclipselink mongoDB本机查询find()不起作用

我最近正在使用 mongoDB 数据库进行 JAVA 项目。所以我决定使用eclipselink 2.4。关于查询,它允许通常的“类似 SQL”的查询,但也(据说)允许本机 mongoDB 查询。我按照本教程进行操作,一切正常。我能够运行 findOne() 本机 mongoDB 查询 (queryOne) 但我无法运行 find() 查询(queryAll 不起作用)...

  1. 查询 queryOne = em.createNativeQuery("db.ORDER.findOne()", Order.class);

  2. 查询 queryAll = em.createNativeQuery("db.ORDER.find()", Order.class);

执行查询时出现错误:

使用 MongoDB shell 执行查询:

如果您能告诉我如何解决此问题或一些解决方法,我将不胜感激。

编辑:JPQL 查询可能很有用,我正在使用一些作为解决方法,但是,我目前无法查询参考 ID。例如,如果我有一个带有客户参考的订单(订单只保存客户的 id)和 mongoDB 查询,我会像这样搜索:

JPQL 类似的查询我相信会是这样的:

然而,再一次......不工作!错误:

谢谢

0 投票
0 回答
347 浏览

spring - 有没有办法对休眠本机查询做出反应

我正在使用 Spring 和 Hibernate 开发 Web 应用程序。在某种情况下,我想撤销用户对数据库的写访问权限。因此,我已经实现EventListeners了对我感兴趣的事件作出反应。但是,该应用程序也使用了一些NativeQueries似乎被我能想到的Listeners和任何Interceptor我能想到的事件。

我正在使用 Spring 3.0.5 和休眠 3.6.8。

有没有办法在不实现我自己的NativeQuery类的情况下对这些本机查询做出反应(EntityManager上帝知道我需要多少类才能让整个事情再次工作)?

0 投票
2 回答
13545 浏览

jpa - jpa 和本机查询

我在原生查询中遇到了一件奇怪的事情:

如果我尝试使用如下命名的本机查询

该应用程序无法运行,我有

但是,如果我不使用 NamedNativeQuery 并且仅创建如下动态本机查询,则相同的查询可以正常工作:

为什么?我对 NamedNativeQuery 做错了什么?谢谢

更新: 实体类如下

0 投票
1 回答
4706 浏览

jpa - JPA:@SequenceGenerator 没有生成序列

我的应用程序已将 JPA 与 Hibernate 供应商和 Oracle 11G DB 一起使用。

在这里,我在我的 MST_EMP 表上使用如下本机查询..

这是我的 MST_EMP 实体详细信息..

据我了解,我们不需要在本机查询中为 EMP_CODE 赋予值。因为序列与它相关联。

但是这个查询给了我这样的错误..

谁能告诉我,我们需要在本机查询中提供 EMP_CODE 吗?

请问原生查询,不引用Entity中自动声明的序列?

谢谢。

0 投票
1 回答
1954 浏览

java - 获取 JPA 本机插入查询的生成标识符

出于性能原因,我需要使用一些本机查询将新对象插入数据库。我有一个非常复杂的 JPA 持久层,它管理我通常的实体读取和写入,我想使用这个持久层来运行本机查询。

我知道我需要 EntityManager#createNativeQuery(String) 和 Query#executeUpdate 方法来实现我的目标。

我目前的问题是我还想获取新插入行的生成标识符。我知道使用 JDBC 或 SpringPersistence 可以做到这一点,但是有没有办法从 JPA 原生查询中获取这些标识符?

0 投票
2 回答
988 浏览

sql - 我的 JPA 原生查询中会发生什么?

我在 mysql 上使用这个查询(tbl1 中的每条记录都有 tbl2 中的记录列表):

结果是真的,但是当我在我的应用程序中将它用作本机查询(javax.persistence.EntityManager#createNativeQuery())时,tbl2.id 会重复。问题是什么?

结果是这样的:

但我希望:

我的代码是这样的:

List<MyDTO> foundList = (List<MyDTO>) entityManager.createNativeQuery("the query above", MyDTO.class).getResultList();

0 投票
1 回答
63280 浏览

java - java对象到日期或日期时间的转换

我有一个内部连接表的查询:

List<Object[]> resultList = entityManager.createNativeQuery(SOME QUERY).getResultList();

当我尝试访问Object[]其中一个元素时,Date我尝试这样做:

这给出了明显的例外:

nested exception is java.lang.NumberFormatException: For input string: "2012-11-20"

我改变DateDateTime得到TO_CHAR(createdDate,'DD.MM.YYYY:HH24:MI:SS')

并尝试了以下代码:

这种方法的结果:createdDate = null

有什么建议么 ?