create or replace procedure name_pro(p_id in varchar2)
as
cursor t_sor(v_id varchar2) is
select * from table_name where id=v_id;
begin
for v_sor in t_sor loop
...
end loop;
end;
/
as
cursor t_sor(v_id varchar2) is
select * from table_name where id=v_id;
begin
for v_sor in t_sor loop
...
end loop;
end;
/
解决方案 »
- c#写的oracle操作类库,里面的方法要返回什么类型的值才能被c++程序使用呢
- Oracle 命令未正确结束
- oracle 查询500万数据的sql语句执行时间控制在1秒以内
- 查询一字段是否包含另一字符串
- 如何在 Package 中创建同义词
- 不同数据库不同表结构的表之间数据转移
- 解决不了我就精神分裂:redhat9下安装oracle8.1.7安装界面文字不能显示。
- 请教oracle向mySql 移植时需要注意哪些问题?
- (在线)不使用游标,能不能用简单的一条sql语句实现
- ERROR ORA-12560: TNS: 协议适配器 (急!!!!)
- 一个比较麻烦的查询时间SQL语句,请进。
- DEVELOP如何访问LINUX上的ORACLE trnsname.ora里每个字段什么意思
open 游标变量 for 查询语句
-------------------
2003-03-05 15:32:39
2003-03-04 15:32:47
2003-03-03 15:32:53
2003-03-07 15:33:01
2003-03-06 15:33:06
2003-03-08 15:33:11已选择6行。
SQL> create or replace procedure name_pro(p_id in date)
2 as
3 d_sor date;
4 cursor t_sor(p_id date) is
5 select * from tb01 where col01<p_id;
6 begin
7 for v_sor in t_sor(p_id) loop
8 DBMS_OUTPUT.PUT_LINE('ok');
9 end loop;
10 end;
11 / 过程已创建。SQL> set serveroutput on
SQL> exec name_pro(sysdate);
ok
ok
ok
okPL/SQL 过程已成功完成。
...
loop
fetch cur1 into val;
EXIT WHEN cur1%NOTFOUND;
if mod(i,spliting_range)=0 then
insert into dt_spliting_table values(val);
end if;
i:=i+1;
last_val:=val;
end loop;
close cur1;