4
我正在從一個表中獲取數據並想要插入到其他表中。 第一個包含很多字段的表,如果要存儲在新表中,我只需要一些字段。爲此,我使用Hibernate查詢。 我能夠從查詢獲取結果,但是當我嘗試插入到其他表扔org.hibernate.hql.internal.QueryExecutionRequestException:不支持DML操作[插入到
org.hibernate.hql.internal.QueryExecutionRequestException:不支持DML操作[插入
下面是拋出異常的代碼。
Query query=session.createQuery(" insert into CustomerMailAddress (subs_id,mail_Id) SELECT DISTINCT subs_id, email_id FROM SubcriberModel WHERE subs_id IS NOT NULL AND email_id IS NOT NULL AND email_id <> ''");
List result = query.list();
int res = query.executeUpdate();
System.out.println("Command successfully executed....");
System.out.println("Numer of records effected...,"+result.size());
當我運行下面的代碼而不使用query.executeUpdate();方法
Query query=session.createQuery(" SELECT DISTINCT subs_id, email_id FROM SubcriberModel WHERE subs_id IS NOT NULL AND email_id IS NOT NULL AND email_id <> '' UNION ALL SELECT DISTINCT tbl_subscribers_subs_id, email_id FROM SocialProfileModel WHERE tbl_subscribers_subs_id IS NOT NULL AND email_id IS NOT NULL AND email_id <> ''");
List result = query.list();
出把上面的代碼是 命令執行成功.... NUMER的影響記錄...,21。
我刪除了query.list();並再次運行該程序,但問題仍然存在。 – Vaibs
@Vaibs在我編輯的答案中試試代碼 –
我試過上面的代碼拋出異常org.hibernate.hql.internal.ast.QuerySyntaxException:期望OPEN,在第1行第33列附近找到'a'[插入到 – Vaibs