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

如何在JPA / Hibernate中执行本机SQL脚本?

闾丘冠玉
2023-03-14
问题内容

我有一个带有数据库转储的SQL脚本。如何使用Hibernate执行它EntityManager

我这样尝试过:

EntityManager manager = getEntityManager(); 
Query q = manager.createNativeQuery(sqlScript);
q.executeUpdate();

但是它仅在sqlScript包含单个SQL查询且我需要运行多个插入和其他复杂内容时才有效。

RDBMS:Oracle数据库11g快捷版11.2.0.2.0版-64位生产


问题答案:

用开始结束块包装查询。喜欢

EntityManager manager = getEntityManager(); 
Query q = manager.createNativeQuery("BEGIN " + sqlScript + " END;");
q.executeUpdate();


 类似资料:
  • 问题内容: 我有一些要自动执行的SQL脚本。过去,我使用过SQL * Plus,并从bash脚本中手动调用了sqlplus二进制文件。 但是,我试图找出是否有一种方法可以连接到数据库,并从bash脚本内部调用该脚本……以便我可以插入查询并使查询相对于特定天数运行过去。 问题答案: 我有点困惑。您应该能够从bash脚本中调用sqlplus。这可能就是您在第一个陈述中所做的 尝试在bash脚本中执行以

  • 问题内容: 我有一个.sql文件,其中包含一堆要在heroku上的postgres数据库上执行的插入命令。但我不知道该怎么做: 如果我有权访问postgres控制台,请输入以下内容: 但似乎heroku不支持此命令。我尝试过 但这不能让我输入文件。 还有其他选择吗? 问题答案: 对于种子数据库之类的事情,我推荐理查德·布朗(Richard Brown)的答案:可以说,最好使用Rails种子机制之类

  • 我想使用SQL脚本文件在Kubernetes pod中创建一个SQL Server数据库。我有创建数据库和插入主数据的SQL脚本。由于我是Kubernetes的新手,我很难在pod中运行SQL脚本。我知道SQL脚本可以在单独的kubectl exec命令中手动执行,但是我希望它在pod deploy yml文件本身中自动执行。 有没有办法将脚本文件挂载到pod的卷中,并在启动容器后运行它?

  • 问题内容: 我正在使用,并且 一直在尝试使用hibernate模式执行sql查询。我写过: 该查询不在数据库中执行。但是如果我写 相应的行将添加到表中。为什么hibernate不起作用,但是本机查询和JDBC一起起作用? 问题答案: 这应该对您有帮助。

  • 问题内容: 如何自动执行给定文件夹中所有SQL脚本的运行过程? 问题答案: 编写Windows脚本,使用FOR构造遍历文件,并使用SQLCMD实用程序执行每个文件。

  • 问题内容: 我有一个批处理文件,该文件在sqlplus中运行一个SQL脚本,并将输出发送到日志文件: sqlplus用户/密码 RowCount.log 我的日志文件包含以下内容: 等等,但是它有数千行输出,因此很难确定哪个结果属于哪个语句。 我想在输出中添加一些格式,以便我可以识别发生了什么。可以对执行的语句进行回显,也可以在脚本中手动插入一些“ echo”语句。理想情况下,它看起来像这样: 问