Bonjour,
J'essaie de faire un insert de masse (insert into .. select"dans une requête hibernate en utilisant le sql natif : voici mon code
Et voici ce que j'ai comme message erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Transaction transaction = session.beginTransaction(); String sqlRequete = "insert into T1"; sqlRequete = sqlRequete + "select T2.code, T2.nom"; sqlRequete = sqlRequete + " from T2 where T2.TYPE='N'" ; SQLQuery query = session.createSQLQuery(sqlRequete); query.executeUpdate();
J'ai écrit une requête avec un "update" et c'est la même chose.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 javax.servlet.ServletException: java.lang.UnsupportedOperationException: Update queries only supported through HQL org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:516) org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:423) org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226) org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164) org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415) javax.servlet.http.HttpServlet.service(HttpServlet.java:710) javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
J'ai essayé aussi en vain avec "Query query = session.createSQLQuery(sqlRequete);"
Je précise que cette application utilise hibernate ; mais que pour des besoins internes et exceptionnellement je dois utiliser cet insert de masse.
Merci d'avance
Chris.
Partager