首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

关于存储过程和游标的问题

2014-01-28 
关于存储过程和游标的问题: CREATE OR REPLACE function SFCLIENT.F_BC_KYE(sdate date,edate date) return

关于存储过程和游标的问题
CREATE OR REPLACE function SFCLIENT.F_BC_KYE(sdate date,edate date) return boolean as
isok boolean;
lsh number;
posid varchar2(15);
cursor fh_cursor(posid_id VARCHAR2,starttxndate date,etarttxndate date) is
select * from t_fh_rec where txndate>to_char(trunc(starttxndate),'yyyymmdd') and txndate<to_char(trunc(etarttxndate),'yyyymmdd') and posid=posid_id order by posid,posseq
cursor bc_cursor return is
select * from t_bcb;
fh_record fh_cursor%rowtype;
bc_record bc_sursor%rowtype;
begin
open bc_cursor;
dbms_output.put_line(to_char(bc_cursor%rowcount));
loop
fetch bc_cursor into bc_record;
exit when bc_cursor%notfound;
posid:=bc_record.posid;
lsh:=bc_record.maxlsh;
isok:=true;
FOR fh_record IN fh_cursor(bc_record.posid,sdate,edate) LOOP
lsh:=lsh+1;
if lsh<>fh_record.posseq then
if isok then
insert into t_bcqq values(fh_record.rowid,'noposid',lsh+1,lsh+1,'0',fh_record.posid,'0');
isok:=false;
end if;
elseif lsh=fh_record.posseq then         

热点排行