JSP中 有语句
rs=conn.exeQry('exec proc_aaa')
但常识rs.next();后rs.getString(1);提示null pointer exception
但前提存储过程正确...
但存储过程中含有insert update delete select
那么rs获取的是什么?
我只想获取select后的结果什么方法...
跪求解决方法~
rs=conn.exeQry('exec proc_aaa')
但常识rs.next();后rs.getString(1);提示null pointer exception
但前提存储过程正确...
但存储过程中含有insert update delete select
那么rs获取的是什么?
我只想获取select后的结果什么方法...
跪求解决方法~
public String execute(String codes) throws Exception {
CallableStatement stmt = con.prepareCall("{call sp_Mater(?)}");
stmt.setString(1, codes);
stmt.execute(); do {
if(stmt.getUpdateCount() == -1) {
stmt.getMoreResults();
continue;
}
else {
while(true) {
rs = stmt.getResultSet(); if(rs != null) {
while(rs.next()) {
return rs.getString("result");//select result from....
}
} if(!stmt.getMoreResults()) {
break;
}
}
}
}
while(!(stmt.getResultSet() == null && stmt.getUpdateCount() == -1)); return "";
}
as
begin
set nocount on
...
set nocount off
select ...
end
go把结果集select之间的影响行数那些东东忽略看看。
如果你只想获取select的结果的话直接调用查询的方法将你存储过程中的查询结果放到结果集中
但常识rs.next();后rs.getString(1);提示null pointer exception
说明没有找到你的这个查询结果所以报错,如果你只想获取select的结果的话直接调用查询的方法将你存储过程中的查询结果放到结果集中
在存储过程中建立一个@selectSum output---存放查询结果的(这个得输出)
在调用存储过程的时候将其输出就ok了,就可以拿到你的查询内容了