CallableStatement调用sql server存储过程的问题(请帮帮忙啊)
java程序是这样的:
...
CallableStatement toesUp = null;
toesUp= conn.prepareCall("{call pagination(?,?,?,?,?,?) }");
toesUp.setString(1,strPerpagenumber);
toesUp.setString(2,strPagenumber);
toesUp.setString(3,strTablename);
toesUp.setString(4,strOrderby);
toesUp.setString(5,strSqlCondition);
toesUp.registerOutParameter(6,java.sql.Types.VARCHAR);
try
{
toesUp.execute();
ResultSet rs = (ResultSet) toesUp.getResultSet();
strTotalresult=toesUp.getString(6);
ResultSetMetaData rsmd = null;
...
}
SQL SERVER的存储过程是这样的
...
create procedure pagination
@perpagenumber varchar(10)='20',
@pagenumber varchar(10)='1',
@tablename varchar(20)='tmp_t_cs_infos_his',
@orderby varchar(200)='order by cust_code,backupdate',
@sqlcondition varchar(200)=''
@totalresult varchar(200) output
as
begin
...
select * from tmp_t_cs_infos_his
select @totalresult=count(*) from tmp_t_cs_infos_his
end
我跟踪调用的时候,会发现ResultSet rs = (ResultSet) toesUp.getResultSet()的rs为NULL值,请高手帮帮忙啊
如果我去掉“存储过程的返回参数”就OK了,请问是什么原因啊?