在调用sql server存储过程时出现Output parameters have not yet been processed. Call getMoreResults()错误:java中调用代码:public List<Vector<String>> listMail(int rows) throws SQLException {
Connection conn = null;
CallableStatement proc = null;
try {
conn = getConnection();
conn.setAutoCommit(false);
proc = conn.prepareCall("{? = call sp_t12_getmail(?)}");
proc.registerOutParameter(1, Types.OTHER);
proc.setInt(2, rows);
ResultSet rs= proc.executeQuery();
rs = (ResultSet) proc.getObject(1);
List<Vector<String>> result = new ArrayList<Vector<String>>();
while (rs.next()) {
Vector<String> vec = new Vector<String>();
vec.add(rs.getString("desttermid"));
vec.add(rs.getString("content"));
result.add(vec);
}
rs.close();
conn.commit();
return result;
} finally {
if (proc != null)
try {
proc.close();
} catch (SQLException e1) {
}
if (conn != null)
try {
conn.close();
} catch (SQLException e1) {
}
}
}
存储过程:CREATE PROCEDURE sp_t12_getmail
@rows int
 AS
set nocount on
declare @cur_mtlist  int
begin
-- 创建临时表
CREATE  TABLE #tmp_mt(
[reminderid] [int] NOT NULL ,
[userid] [int] NOT NULL ,
[scheduleid] [int] NULL ,
[desttermid] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[feeflag] [int] NULL ,
[content] [varchar] (255) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[status] [int] NOT NULL ,
[repeat] [int] NOT NULL ,
[lastdate] [datetime] NULL ,
[createdate] [datetime] NOT NULL ,
[style] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[timestr] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL 
)

-- 取记录到临时表
INSERT INTO #tmp_mt(reminderid,userid,scheduleid,desttermid,feeflag,content,status,repeat,lastdate,createdate,style,timestr)
SELECT top 1  reminderid,userid,scheduleid,desttermid,feeflag,content,status,repeat,lastdate,createdate,style,timestr FROM t12_reminder
WHERE style='M'AND status=0
ORDER BY reminderid DESC;
-- 将记录标记为已处理
UPDATE t12_reminder SET status=1,repeat=1,lastdate={ fn NOW()}
WHERE reminderid IN (SELECT reminderid FROM #tmp_mt);
-- 返回记录
SELECT *  FROM #tmp_mt;
return @cur_mtlist; end
GO
哪为大侠帮忙解决一下,感激不进!!!