web-dev-qa-db-ja.com

JPA / HibernateでネイティブSQLスクリプトを実行するにはどうすればよいですか?

データベースダンプを含むSQLスクリプトがあります。 HibernateのEntityManagerを使用して実行するにはどうすればよいですか?

私はこの方法で試しました:

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

ただし、sqlScriptに単一のSQLクエリが含まれている場合にのみ機能します。複数の挿入やその他の複雑な処理を実行する必要があります。

RDBMS:Oracle Database 11g Express Editionリリース11.2.0.2.0-64ビット本番

37
Anke

クエリをbegin endブロックでラップします。いいね

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