v_output OUT NUMBER --
输出参数
)
IS
PRAGMA AUTONOMOUS_TRANSACTION;
CURSOR c1 --
定义一个游标,在
begin
之前
IS
SELECT b.tablename mlogtable,
MAX (remarks)KEEP (DENSE_RANK LAST ORDER BY starttime)
remarks
FROM proc_log a, table_proc b
WHERE TO_CHAR (starttime, 'yyyy-mm-dd') <= --
转换时间并做比较
TO_CHAR ( SYSDATE - TO_DSINTERVAL (
TO_CHAR (intervaldays) || ' 00:00:00'), 'yyyy-mm-dd' )
AND a.remarks LIKE 'SUCCEEDED:%'
AND a.procedurename = b.procedurename
GROUP BY b.tablename); --
定义结束
c1_rec c1%ROWTYPE; --
定义接受游标数据行的
ROWTYPE
v_mlogtable VARCHAR (30);
v_postperiod CHAR (2);
v_acctbalbeginseq NUMBER;
v_systime DATE;
BEGIN
v_input := 0; --
变量赋值
v_systime := SYSDATE;
OPEN c1; --
打开游标
LOOP --
循环
FETCH c1 INTO c1_rec; --
从当前游标行赋值
c1_rec
EXIT WHEN c1%NOTFOUND; --
游标没有数据退出
v_mlogtable := c1_rec.mlogtable; --
从行取出具体数据赋给变量
CASE TRIM (LOWER (v_mlogtable)) --CASE
起始
WHEN 'String1' --
当条件一
THEN --
做条件一工作
BEGIN
v_remarks := REPLACE (v_remarks, 'AA');
END;
WHEN 'String2' --
当条件二
THEN
BEGIN
END;
ELSE --
其他条件
NULL;
END CASE; --CASE
结束
文档被以下合辑收录
相关文档
评论