他的SQL是这样的意思:首先执行begin transaction,然后excute pkg_ticket.sp_ticket存储过程,这样就会产生数据在一张临时表里,这才是我想得到的数据,可以用select * from 临时表,最后还要commit transaction,这样原来这张临时表的数据又没了....
我按他的意思去做:
Transaction ts = new Transaction(); //里面已经封装好Transaction这个类的,不是直接用JDBC
ts.beginTransaction();
ts.setSQL("{call pkg_ticket.sp_ticket(?,?)}");
ts.setString(1,this.getString("beginTime"));
ts.setString(2,this.getString("endTime"));
ts.execute();
IRecordSet rs = new Table(); //也是封装好的ResultSet
rs.setSQL("select * from 临时表");
rs.getRecordSet(); //这样可以得到rs.
ts.endTransaction(); //这里是commit transaction意思跟他的SQL是相对应的.
我按他的意思去做:
Transaction ts = new Transaction(); //里面已经封装好Transaction这个类的,不是直接用JDBC
ts.beginTransaction();
ts.setSQL("{call pkg_ticket.sp_ticket(?,?)}");
ts.setString(1,this.getString("beginTime"));
ts.setString(2,this.getString("endTime"));
ts.execute();
IRecordSet rs = new Table(); //也是封装好的ResultSet
rs.setSQL("select * from 临时表");
rs.getRecordSet(); //这样可以得到rs.
ts.endTransaction(); //这里是commit transaction意思跟他的SQL是相对应的.
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货