我试图将数据插入到具有表列 (名称,值) 与
Query query = em.createQuery("INSERT INTO TestDataEntity (NAME, VALUE) VALUES (:name, :value)");
query.setParameter("name", name);
query.setParameter("value", value);
query.executeUpdate();
并得到以下异常:
ERROR org.hibernate.hql.internal.ast.ErrorCounter - line 1:42: unexpected token: VALUES
另外,我也不能使用本机查询插入记录:
Query query = em.createNativeQuery("INSERT INTO TEST_DATA (NAME, VALUE) VALUES (:name, :value);");
query.setParameter("name", name);
query.setParameter("value", value);
query.executeUpdate();
抛出另一个异常:
javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute statement
问题是:
非常感谢。
我解决了这个问题。
根据此,
JPA中没有INSERT语句。
但是我可以用本机查询解决这个问题:我错误地放置了一个多余的;在查询末尾,因此可以通过将其删除来解决问题。
问题内容: 我在JPA中使用以下代码,以便在使用本机查询插入后返回自动生成的ID: 但是,出现以下错误: 问题答案: 好的,那很容易。我刚刚使用了q.getSingleResults(),效果很好!
我正在制作一个rest api,其中我必须根据id进行更新,并通过spring data在表中插入没有id基础的数据。但我发现在这两种情况下都有一个错误,它运行插入查询,只有更新不工作 存储库文件@repository公共接口CustomerRepository扩展JpaRepository{CustomerEntity save(CustomerEntity CustomerEntity);Cu
我使用cakephp2.3,并试图分页查询检索我的所有'工作'在一定的英里半径内。幸运的是,我找到了我认为我需要的查询,但是我在获取正确的数据时遇到了问题。 编辑,使每个“作业”记录都有一个lat和lng字段,另一个用户通过在搜索表单中输入自己的lat和lng值以及英里半径来执行搜索。在下面的代码中,php变量$lat$lng和$miles在我的分页器中是用户输入的搜索参数。 我在这里找到的查询h
问题内容: 在上一集中(如何在MySQL中构建跨数据库查询),我学习了如何在MySQL中构建跨数据库查询。这很好用,但是当我们的英雄尝试在PHP中使用这种新发现的知识时,他发现了他最好的朋友FAIL在等他。 我看了看PHP。这似乎暗示着,如果我想将MySQL与PHP结合使用,我有两种选择: 使用,但是每次只能使用一个数据库。这是我们当前的设置,将数据库作为名称空间标识符似乎不起作用(它在MySQL
问题内容: 我在同一台服务器上有两个数据库。Google给了我一些提示,但是我找不到任何“官方”信息。有人可以指出我的文档来说明如何执行此操作吗?使用PHP的说明也将很有用。谢谢! 问题答案: 我在同一台服务器上有两个数据库。…如何在MySQL中构建跨数据库查询? 通过在表的前面加上适当的数据库名称,可以访问同一MySQL实例上的其他数据库。IE: 记住 查询将使用用于建立连接的身份验证凭据来执行
问题内容: 在寻找Java库以数据库不可知的方式构建查询时,我遇到了许多信息,包括iciql,querydsl,jooq,joist,hibernate等。 我想要一些不需要配置文件并且可以使用动态架构的东西。对于我的应用程序,我在运行时了解数据库和架构,因此我没有架构的任何配置文件或域类。 这似乎是querydsl的核心目标之一,但仔细阅读querydsl的文档,我看到了很多使用域类构建动态查询