44

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

我试过这样:

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

但它仅在sqlScript包含单个 SQL 查询时才有效,而我需要运行多个插入和其他复杂的东西。

RDBMS:Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64 位生产

4

1 回答 1

67

用开始结束块包装您的查询。像

EntityManager manager = getEntityManager(); 
Query q = manager.createNativeQuery("BEGIN " + sqlScript + " END;");
q.executeUpdate();
于 2013-01-16T12:42:27.877 回答