需求是这样的:我要把B表中的数据插入到A表中
sql语句是这样的:
insert into DM_USER_invoking_JXIF
select t.uuid,t.userip,t.Userurl,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),'1' from M_USER_SYSTEM_JXIF t where a.userip = '127.0.0.1'
然后我在配置文件中
1.如果这样直接配的话:
insert into DM_USER_invoking_JXIF
select t.uuid,t.userip,t.Userurl,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),'1' from M_USER_SYSTEM_JXIF t where a.userip = '127.0.0.1'
2.如果这样配的话
<selectKey keyProperty="id,ip,url,time,num" resultClass="Map" type="pre">
select t.uuid id,t.userip ip,t.Userurl url ,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') time,'1' num from DM_USER_SYSTEM_JXIF t
where a.userip = '127.0.0.1'
</selectKey>
insert into DM_USER_invoking_JXIF (uuid,ip,url,createtime,invokingnum) values (#id#,#ip#,#url#,#time#,#num#)
</insert>
都报同样的错误:
org.apache.cxf.interceptor.Fault: SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [null]; error code [0]; Select statements cannot be executed as an update.; nested exception is java.sql.SQLException: Select statements cannot be executed as an update.
求高手指点,怎么解决这个问题?用其他方法实现也行
mybaties中的insert into select 用法,mybaties批量插入。http://blog.csdn.net/a347911/article/details/51542845
我按照那上面写 还是报一样的错。。。是不是mybatis2.x 没法这样实现?
应该是不支持这种写法,还是老老实实分开写吧
是不是傻,两步的事情,为什么非要一步做完。第一步查询,第二步插入用两个方法不就完了