当前位置: 首页 > 面试题库 >

通过JPA EntityManager执行创建表查询

萧萧迟
2023-03-14
问题内容

我需要在通过JPA EntityManager访问的数据库中创建一个新表。JPA
NativeQueries是否支持“选择”或“更新”以外的查询?还是在JPA上下文中还有另一种先进的方法来执行复杂的SQL查询?


问题答案:

jpa“本机查询”仅可用于DML语句(数据处理语言)。要发布任何DDL(例如创建表),您需要从EntityManager获取基础连接。

如何从EM中提取连接将取决于您所使用的JPA实现,但肯定包括调用EntityManager.getDelegate()。

或者,(我认为这是一种更好的方法),如果要对尝试创建表的对象使用spring,请注入DataSource或JDBCTemplate,并使用该类创建表。



 类似资料:
  • 问题内容: 我有一个dbf,我想使用VB6复制到新的mdb中。 以下是我的专长,可以轻松地创建新的mdb,但是,我认为我可以使用INTO进行Select查询,以使用数据创建新表。 请注意:我假设的是在运行SQL查询时创建了MSAccess表。 我在FROM子句中收到语法错误。我试图做的是操纵此sql查询以执行我需要的操作: sql =“将INERT插入[Table1] SELECT * FROM

  • 我创建了一个小应用程序来下载youtube视频,并将它们添加到我的音乐文件夹中,这样我就可以通过spotify收听它们。只要我通过IDE运行该应用程序,它就可以正常工作。我创建了一个。exe文件通过pyinstaller,但它在启动时崩溃,我尝试以管理员身份运行它,也尝试按照其他线程中的建议通过cmd运行它,但没有任何效果。 我使用以下方法创建了它: 这是python代码: 这是我得到的,我试图通

  • 问题内容: 我有以下方法: 在这里,我依次调用三种方法,这依次命中数据库并获取我的结果,然后对从数据库命中获得的结果进行后处理。我知道如何通过使用并发调用这三种方法。但是我想用Java 8 来实现。有人可以指导我如何通过并行流实现相同目标吗? 编辑 我只想通过Stream并行调用方法。 问题答案: 您可以利用这种方式:

  • 我有几个存储过程要作为初始设置执行。因此,我所做的是将该存储过程放置在中,并设置。 但是在我的应用程序启动时,该应用程序由于com.mysql.jdbc.exceptions.jdbc4.mysqlSyntaxerRoreXception而失败。这意味着它不能理解该过程的语法,但是可以在表单上手动执行相同的过程,不会有任何问题。那么如何通过执行它呢 data.sql- 错误- 原因:org.spr

  • 问题内容: 我正在使用R包通过R访问我的PostgreSQL数据库(9.3)。我有一些非常长且较大的sql查询(从raster2pgsql生成的几个MB大。)。 如何在R中以语句形式发送/执行sql查询文件? 正常方式 似乎无法通过来工作。我试图通过读取整个sql文件作为字符向量,但是这也失败了,因为dbSendQuery显然仅支持单个命令? 问题答案: 或仅用于“ SQL”部分,而不是psql命

  • 问题内容: 我目前正在学习SQL,并且已经在系统上安装了oracle 11g express。我正在尝试创建表,但是当我尝试运行以下命令时,出现以下错误消息: 第3行出现错误:ORA-00904:无效的标识符 有人可以告诉我我在做什么错吗? 感谢所有答复,我成功运行了此命令: 非常感谢您的快速回复! 克里斯 问题答案: 您有in作为列名。虽然可以使用它,但必须将其用引号引起来: 每次在查询中调用引