/* Formatted on 2005/11/08 15:08 (Formatter Plus v4.8.6) */
DECLARE
create_people_run VARCHAR (250);
create_part_run VARCHAR (250) := '';
do_limit_time_run NUMBER (15) := '';
guidang_time_run NUMBER (15) := '';
pre_people_run VARCHAR (250) := '';
pre_part_run VARCHAR (250) := '';
process_limit_run NUMBER (15) := '';
compare_time NUMBER (15) := ''; CURSOR my_own
IS
SELECT c536870939, c536871050, c536871023, c536870934, c536870937,
c536970981, c536871026, c536871027, c536870975, c3
FROM "ARADMIN"."T359"
WHERE c3 >=
( TO_DATE ( TO_CHAR (SYSDATE - 181, 'yyyy-mm-dd ')
|| '18:00:00',
'yyyy-mm-dd hh24:mi:ss'
)
- TO_DATE ('1970-01-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss')
)
* 86400
- 28800
AND c3 <=
( TO_DATE ( TO_CHAR (SYSDATE - 180, 'yyyy-mm-dd ')
|| '18:00:00',
'yyyy-mm-dd hh24:mi:ss'
)
- TO_DATE ('1970-01-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss')
)
* 86400
- 28800; v_s my_own%ROWTYPE;
BEGIN
OPEN my_own; LOOP
BEGIN
FETCH my_own
INTO v_s; EXIT WHEN my_own%NOTFOUND; IF v_s.c536871050 = 'EOMS:Incidents'
THEN
-- DBMS_OUTPUT.put_line(v_s.c536870939);
SELECT c536871090, t2.c536870915, c536871080,
t1.c536870923
INTO create_people_run, create_part_run, do_limit_time_run,
guidang_time_run
FROM "ARADMIN"."T385" t1, "ARADMIN".t61 t2
WHERE t1.c1 = '000000000000259'
AND t1.c536871090 = t2.c240000001 || '.'
AND t1.c536870924 NOT IN (0, 4); SELECT MAX (c3)
INTO compare_time
FROM "ARADMIN"."T359"
WHERE c3 < v_s.c3; SELECT c536870937, c536970981
INTO pre_people_run, pre_part_run
FROM "ARADMIN"."T359"
WHERE c3 = compare_time; INSERT INTO "ARADMIN"."MIDDLE_TABLE"
(aradmin.middle_table.ref_num,
aradmin.middle_table.ref_type,
aradmin.middle_table.create_people,
aradmin.middle_table.create_part,
aradmin.middle_table.process_people,
aradmin.middle_table.process_part,
aradmin.middle_table.ok_process_time,
aradmin.middle_table.process_limit_time,
aradmin.middle_table.start_time,
aradmin.middle_table.end_time,
aradmin.middle_table.do_limit_time,
aradmin.middle_table.guidang_time,
aradmin.middle_table.guidang_limit_time,
aradmin.middle_table.pre_id,
aradmin.middle_table.pre_people,
aradmin.middle_table.pre_part,
aradmin.middle_table.create_process_time,
aradmin.middle_table.mytime
)
VALUES (0000000000000123,
--v_s.c536870939,
v_s.c536871050,
create_people_run,
create_part_run,
v_s.c536870937,
v_s.c536970981,
v_s.c536870934,
do_limit_time_run,
v_s.c536871026,
v_s.c536871027,
do_limit_time_run,
guidang_time_run,
do_limit_time_run,
v_s.c536870975,
pre_people_run,
pre_part_run,
v_s.c3,
TO_CHAR (SYSDATE, 'yyyymmdd')
);
END IF;
END;
END LOOP; CLOSE my_own; COMMIT;
END; 其中WHERE t1.c1 = '000000000000259'这个条件换成v_s.c536870939就告诉我未找到数据
其中c1是15位的字符串,是定义为30位的字符串,000000000000259是通过运行游标的查询部分而得到的一个c536870939的值
DECLARE
create_people_run VARCHAR (250);
create_part_run VARCHAR (250) := '';
do_limit_time_run NUMBER (15) := '';
guidang_time_run NUMBER (15) := '';
pre_people_run VARCHAR (250) := '';
pre_part_run VARCHAR (250) := '';
process_limit_run NUMBER (15) := '';
compare_time NUMBER (15) := ''; CURSOR my_own
IS
SELECT c536870939, c536871050, c536871023, c536870934, c536870937,
c536970981, c536871026, c536871027, c536870975, c3
FROM "ARADMIN"."T359"
WHERE c3 >=
( TO_DATE ( TO_CHAR (SYSDATE - 181, 'yyyy-mm-dd ')
|| '18:00:00',
'yyyy-mm-dd hh24:mi:ss'
)
- TO_DATE ('1970-01-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss')
)
* 86400
- 28800
AND c3 <=
( TO_DATE ( TO_CHAR (SYSDATE - 180, 'yyyy-mm-dd ')
|| '18:00:00',
'yyyy-mm-dd hh24:mi:ss'
)
- TO_DATE ('1970-01-01 00:00:00',
'yyyy-mm-dd hh24:mi:ss')
)
* 86400
- 28800; v_s my_own%ROWTYPE;
BEGIN
OPEN my_own; LOOP
BEGIN
FETCH my_own
INTO v_s; EXIT WHEN my_own%NOTFOUND; IF v_s.c536871050 = 'EOMS:Incidents'
THEN
-- DBMS_OUTPUT.put_line(v_s.c536870939);
SELECT c536871090, t2.c536870915, c536871080,
t1.c536870923
INTO create_people_run, create_part_run, do_limit_time_run,
guidang_time_run
FROM "ARADMIN"."T385" t1, "ARADMIN".t61 t2
WHERE t1.c1 = '000000000000259'
AND t1.c536871090 = t2.c240000001 || '.'
AND t1.c536870924 NOT IN (0, 4); SELECT MAX (c3)
INTO compare_time
FROM "ARADMIN"."T359"
WHERE c3 < v_s.c3; SELECT c536870937, c536970981
INTO pre_people_run, pre_part_run
FROM "ARADMIN"."T359"
WHERE c3 = compare_time; INSERT INTO "ARADMIN"."MIDDLE_TABLE"
(aradmin.middle_table.ref_num,
aradmin.middle_table.ref_type,
aradmin.middle_table.create_people,
aradmin.middle_table.create_part,
aradmin.middle_table.process_people,
aradmin.middle_table.process_part,
aradmin.middle_table.ok_process_time,
aradmin.middle_table.process_limit_time,
aradmin.middle_table.start_time,
aradmin.middle_table.end_time,
aradmin.middle_table.do_limit_time,
aradmin.middle_table.guidang_time,
aradmin.middle_table.guidang_limit_time,
aradmin.middle_table.pre_id,
aradmin.middle_table.pre_people,
aradmin.middle_table.pre_part,
aradmin.middle_table.create_process_time,
aradmin.middle_table.mytime
)
VALUES (0000000000000123,
--v_s.c536870939,
v_s.c536871050,
create_people_run,
create_part_run,
v_s.c536870937,
v_s.c536970981,
v_s.c536870934,
do_limit_time_run,
v_s.c536871026,
v_s.c536871027,
do_limit_time_run,
guidang_time_run,
do_limit_time_run,
v_s.c536870975,
pre_people_run,
pre_part_run,
v_s.c3,
TO_CHAR (SYSDATE, 'yyyymmdd')
);
END IF;
END;
END LOOP; CLOSE my_own; COMMIT;
END; 其中WHERE t1.c1 = '000000000000259'这个条件换成v_s.c536870939就告诉我未找到数据
其中c1是15位的字符串,是定义为30位的字符串,000000000000259是通过运行游标的查询部分而得到的一个c536870939的值
其中c1是15位的字符串,c536870939是定义为30位的字符串,000000000000259是通过运行游标的查询部分而得到的一个c536870939的值