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

休眠多个本机SQL语句

华哲茂
2023-03-14
问题内容

我想使用Hibernate从文件运行本机SQL。SQL可以包含创建数据库结构的多个语句(即表,约束,但没有insert / update /
delete语句)。

示例,下面是一个非常简单的查询(包含以下两个SQL语句)

CREATE DATABASE test;
CREATE TABLE test.testtbl( id int(5));

我正在使用MySQL数据库,当我运行上述查询时,我返回了gettng语法错误。当我一一运行它们时,就可以了。

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: 
You have an error in your SQL syntax; check the manual that corresponds to your 
MySQL server version for the right syntax to use near 
'CREATE TABLE test.testtbl( id int(5))' at line 1

下面是运行查询的代码(上面的语句已分配给“ sql”变量):

session = sf.openSession();
session.beginTransaction();
Query qry = session.createSQLQuery(sql);
qry.executeUpdate();
session.getTransaction().commit();

任何帮助,将不胜感激。


问题答案:

正如其他人所解释的,
您必须一个一个地运行这些查询。
休眠代码被转换为在JDBC上运行一条更新语句。
但是您提供了两个更新语句。
另外,
我个人更喜欢在某些数据库脚本中使用在Java应用程序之外创建表的代码。



 类似资料:
  • 问题内容: 我想使用Hibernate从文件运行本机SQL。SQL可以包含创建数据库结构的多个语句(即表,约束,但没有insert / update / delete语句)。 示例,下面是一个非常简单的查询(包含以下两个SQL语句) 我正在使用MySQL数据库,当我运行上述查询时,我返回了gettng语法错误。当我一一运行它们时,就可以了。 下面是运行查询的代码(上面的语句已分配给“ sql”变量

  • 问题内容: 我想按数据库中的条件计数记录数。 我尝试使用下一个查询 但是没有方法可以执行此操作并获得结果。 我知道,我可以使用 所以问题是,查询是否具有更高的性能?如果,那么如何执行查询呢? 问题答案: 您可以通过调用来执行第一个查询,例如。 如果要将计数分配给变量,则需要将其转换为适当的类型(它可以取决于DB,但很可能是Long)。第二个查询效率很低,因为Hibernate需要从数据库中检索整个

  • 问题内容: 我正在使用JBoss Embedded 版本beta3.SP10,并且遇到了应该在某些Hibernate版本中修复的持久性错误。可悲的是,我不知道在我的JBoss Embedded中使用了什么版本的Hibernate,也找不到找到此信息的方法,它捆绑的文件中没有 类,也不包含MANIFEST。 我如何不使用就可以找到当前加载的Hibernate版本? 问题答案: 尝试这个, 在这里找到

  • 问题内容: 在JPA(以及JBoss 5中包含的其余Hibernate软件包)中使用Hibernate 3.3.2GA时出现奇怪的性能问题。 我正在使用本机查询,并将SQL组装为准备好的语句。 SQL有很多联接,但是实际上非常基本,只有一个参数。喜欢: 该查询将在一秒钟内在MSSQL Studio上运行。 如果我加 查询将暂停9秒 但是,如果我只替换“?” 值(使其不是Prepared State

  • 问题内容: 这是一个Hibnerate多态性问题和一个数据模型设计问题。他们交织在一起。过去我曾经使用过Hibernate,并且很喜欢它,但是有时候我发现很难想到除了琐碎的设计之外的任何事情。不能敲打hibernate;只是观察到ORM通常可能具有挑战性。 我认为这是一个Hibernate 101问题,但我不确定。我试图实现的目标甚至不可能。 我有一个抽象类Fruit,它将被分为Apple和Ora

  • 问题内容: 我有这部分的hibernate映射xml文件,我一直在寻找原生含义的好例子。 我知道这与唯一标识符属性有关,但是我真的很想举个例子。 对不起,对于新手问题,我是新来的休眠和一般编程:)谢谢! 问题答案: 本机意味着您的生成器将根据您当前的数据库支持使用身份或序列列。 Docs在这里解释了每种策略 http://docs.jboss.org/hibernate/orm/3.3/refer