oracle写了个简单的分页,一直报右括号缺失
存储过程-------
create or replace procedure proc8(v_in_table in varchar,v_in_pagesize in number,v_in_pagenow in number,v_out_result out pack2.my_cursor) is
2 v_begin number(10);
3 v_end number(10);
4 v_sql varchar2(3000);
5 begin
6 v_begin:=v_in_pagesize*(v_in_pagenow-1)+1;
7 v_end:=v_in_pagesize*v_in_pagenow;
8 v_sql:='select name into v_name from (select a1.*,rownum rn from (select * from '||v_in_table||') a1 where rownum<='||v_end||' where rn>'||v_begin;
9 open v_out_result for v_sql;
10 end;
11 /
java程序--------
Class.forName("oracle.jdbc.driver.OracleDriver");
ct=DriverManager.getConnection("jdbc:oracle:thin:@10.1.12.184:1521:orcl","system","manager");
cs=ct.prepareCall("{call proc8(?,?,?,?)}");
cs.setString(1, "student");
cs.setInt(2,2);
cs.setInt(3,1);
cs.registerOutParameter(4,oracle.jdbc.OracleTypes.CURSOR);
cs.execute();
rs=(ResultSet)cs.getObject(4);
while(rs.next()){
System.out.println("name="+rs.getString("name")+" no="+rs.getInt("no"));
}
错误------
java.sql.SQLException: ORA-00907: 缺失右括号
ORA-06512: 在 "SYSTEM.PROC8", line 9
ORA-06512: 在 line 1
create or replace procedure proc8(v_in_table in varchar,v_in_pagesize in number,v_in_pagenow in number,v_out_result out pack2.my_cursor) is
2 v_begin number(10);
3 v_end number(10);
4 v_sql varchar2(3000);
5 begin
6 v_begin:=v_in_pagesize*(v_in_pagenow-1)+1;
7 v_end:=v_in_pagesize*v_in_pagenow;
8 v_sql:='select name into v_name from (select a1.*,rownum rn from (select * from '||v_in_table||') a1 where rownum<='||v_end||' where rn>'||v_begin;
9 open v_out_result for v_sql;
10 end;
11 /
java程序--------
Class.forName("oracle.jdbc.driver.OracleDriver");
ct=DriverManager.getConnection("jdbc:oracle:thin:@10.1.12.184:1521:orcl","system","manager");
cs=ct.prepareCall("{call proc8(?,?,?,?)}");
cs.setString(1, "student");
cs.setInt(2,2);
cs.setInt(3,1);
cs.registerOutParameter(4,oracle.jdbc.OracleTypes.CURSOR);
cs.execute();
rs=(ResultSet)cs.getObject(4);
while(rs.next()){
System.out.println("name="+rs.getString("name")+" no="+rs.getInt("no"));
}
错误------
java.sql.SQLException: ORA-00907: 缺失右括号
ORA-06512: 在 "SYSTEM.PROC8", line 9
ORA-06512: 在 line 1
...全文
相关推荐
Oracle分页(limit方式的运用)
这种方法不仅简单易用,而且能够满足大多数场景下的需求。当然,在实际应用中还需要根据具体情况进行调整和优化,以达到最佳的查询效果。希望本文能为你理解和掌握Oracle分页查询提供一定的帮助。
oracle分页查询sql
在早期版本的Oracle中,通常使用`ROWNUM`来实现分页功能。#### 三、基于ROWNUM的分页查询基于`ROWNUM`的分页查询是Oracle中最常见的分页方法之一。
简单实例解释Oracle分页查询
"Oracle分页查询的简单实例与原理解析"在数据库操作中,分页查询是一项非常重要的功能,尤其在处理大规模数据时,能够有效地提高用户体验并减少系统资源的消耗。本文主要针对Oracle数据库,解释
Oracle 3种分页SQL方法比较
在Oracle数据库中,分页查询是一项常见的操作,用于在大量数据中检索特定部分,而无需加载整个结果集。
浅析Oracle和Mysql分页的区别
四、总结Oracle和MySQL在分页查询上的差异主要体现在语法和执行机制上。MySQL的`LIMIT`简单易懂,适用于小规模数据,但对大规模数据的处理效率可能不高。


基础和管理
