/* 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的值

解决方案 »

  1.   

    其中WHERE t1.c1 = '000000000000259'这个条件换成v_s.c536870939就告诉我未找到数据
    其中c1是15位的字符串,c536870939是定义为30位的字符串,000000000000259是通过运行游标的查询部分而得到的一个c536870939的值
      

  2.   

    其中WHERE t1.c1 = '000000000000259'这个条件换成t1.c1 = v_s.c536870939就告诉我未找到数据 其中c1是15位的字符串,c536870939是定义为30位的字符串,000000000000259是通过运行游标的查询部分而得到的一个c536870939的值