open_cursors参数用于指定数据库中能够同时打开的游标数量,每条查询语句都需要打开一个游标的.
解决方案 »
- 用pl/sql删除所有表
- 新手提问:广域网连接问题
- 【大家帮我看看为什么这条SQL执行起来非常慢!!!】
- 急!!!!!ORACLE创建存储过程中的问题
- 用plsql登录某个数据库服务器很慢,登录别的就是正常的
- 我上网搜索过,但找不到答案,也我已经问了很多人,这问题难道没有人能回答一下吗?
- 关于客户端连接Oracle服务器!急,在线等
- 高分紧急求救:各位大侠如何在VB中连接oracle数据库!!!
- 数据库跟表空间是不是多对多(一个数据库可存在多个表空间,一个表空间可存储多个数据库)?
- 请大家帮忙一下错误:Caused by: java.sql.SQLException: OALL8 处于不一致状态 这个错误怎么解决呢
- 各位帮我看看这个sql语句哪里有错?
- 如何取得选修所有课程(cid)的学生sid
还有不要用RS了,将它转为VECTOR.
public static Vector rsToVector (String sqlQuery, Connection db) {
Vector vRS = new Vector();
CallableStatement csmt = null;
Connection conn = null; try {
conn = db.getConnection();
csmt = conn.prepareCall("{?=call pkg_wzbm_manage.getSearchResult(?)}",
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
csmt.registerOutParameter(1, oracle.jdbc.OracleTypes.CURSOR);
csmt.setString(2, sqlQuery);
csmt.executeQuery(); ResultSet db_rset = (ResultSet) csmt.getObject(1); //ResultSet db_rset = db.executeQuery(sqlQuery);
//Get the ResultSetMetaData. This will be used for the column headings
ResultSetMetaData rsmd = db_rset.getMetaData(); //Get the number of columns in the result set
int numCols = rsmd.getColumnCount();
boolean more = db_rset.next();
while (more) {
Vector columns = new Vector();
for (int i = 1; i <= numCols; i++) {
String tempStr = db_rset.getString(i);
if (tempStr == null)
tempStr = "";
tempStr = tempStr.trim();
columns.addElement(tempStr);
} vRS.addElement(columns);
more = db_rset.next();
}
db_rset.close();
}
catch (Exception ex) {
ex.printStackTrace();
}
finally {
try {
csmt.close();
}
catch (Exception ex) { }
}
return vRS;
}