0

HTMLフォームのボタンをクリックすると、ユーザー入力フィールドを更新しようとしています。これまでのところ、「ID の更新」ボタンをクリックすると、HTML フォームはパッケージ内の別のプロシージャを呼び出す必要があります。
入力フィールド ID は「localid」で、テーブルは GENERAL.GORADID と呼ばれ、列名は goradid_additional_id です。ただし、何らかの理由で btn をクリックしてプロシージャを呼び出すことはできますが、テーブルの列は更新されません。

-- plsql で送信するボタン -- (p_gre_id) というプロシージャのこのボタン

htp.formopen('BANINST1.HWKZLISS.P_UPDATE_ID','post');
htp.formsubmit('','Update ID');
htp.formclose;

-- 更新コード -- (p_update_id) というプロシージャ内

CURSOR C_UPDATE IS
        SELECT
            GORADID_ADDITIONAL_ID, 
            GORADID_PIDM,
            SPRIDEN_PIDM
        FROM GENERAL.GORADID, SATURN.SPRIDEN
        WHERE GORADID_ADDITIONAL_ID IN localid
        AND SPRIDEN_ID IN bannerid
        AND SPRIDEN_CHANGE_IND IS NULL;

始める

     FOR REC IN C_UPDATE LOOP
     IF localid IS NOT NULL THEN 
     UPDATE GENERAL.GORADID
     SET GORADID_ADDITIONAL_ID = localid 
     WHERE GORADID_PIDM = SPRIDEN_PIDM;

     COMMIT;
     END IF;    
     END LOOP; 
4

0 に答える 0