0

SQLPLUS コマンド ラインを使用して次の手順を実行すると、ORA-00905: Missing keyword エラーが発生します。奇妙なことに、PL/SQL 開発者の SQL ウィンドウを介して実行すると、コンパイルして動作しますが、残念ながら、コマンドラインからも動作させる必要があります。

CREATE OR REPLACE PROCEDURE PRO_INSERT_ALERT_END_DATE IS



CURSOR cur_InsertEndDate IS

    SELECT cli_per_id,
           date_ended,
           date_started,
           alertid
    FROM   CP_END_ALERT;

BEGIN



FOR rec_cur_InsertEndDate IN cur_InsertEndDate
LOOP

    BEGIN

        UPDATE vwe_alert_table
        SET    alert_inactive_on = rec_cur_InsertEndDate.date_ended,
               alert_inac_reason = 'Deregistered'
        WHERE  vwe_alert_table.art_id = rec_cur_InsertEndDate.alertid AND
               vwe_alert_table.art_per_id = rec_cur_InsertEndDate.cli_per_id AND
               vwe_alert_table.art_alerted_on = rec_cur_InsertEndDate.date_started AND
               vwe_alert_table.art_alert = 'AL02';


        COMMIT;

    EXCEPTION
        WHEN OTHERS THEN

            dbms_output.put_line('Error updating record ' || SUBSTR(SQLERRM, 1, 250));
            ROLLBACK;

    END;
   END LOOP;
END PRO_INSERT_ALERT_END_DATE;

どんなアドバイスでも大歓迎です

4

1 に答える 1