--设置在ID_GENERATOR中记录PAYMENT_NO值
DECLARE
CURSOR c_id_gen IS
SELECT a.pb_no id_key, max(substr(b.payment_bill_no,10)) id_value FROM mems_payment_bill b
JOIN (SELECT distinct(substr(b.payment_bill_no,1,9)) pb_no
FROM mems_payment_bill b) a
ON substr(b.payment_bill_no,1,9) = a.pb_no
GROUP BY a.pb_no;
r_id_gen c_id_gen%ROWTYPE;
v_key VARCHAR2(255);
v_value NUMBER(10);
BEGIN
OPEN c_id_gen;
LOOP
FETCH c_id_gen INTO r_id_gen;
EXIT WHEN c_id_gen%NOTFOUND;
v_key := 'PAYMENT_NO_' || substr(r_id_gen.id_key, 1, 1) || '_' || substr(r_id_gen.id_key, 2);
v_value := TO_NUMBER(r_id_gen.id_value)+1;
INSERT INTO ID_GENERATOR(ID_KEY, ID_VALUE) VALUES (v_key, v_value);
END LOOP;
CLOSE c_id_gen;
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.PUT_LINE('import paymentbill error:' || SQLERRM);
ROLLBACK;
END;
ID_GENERATOR中记录PAYMENT_NO值
最新推荐文章于 2024-08-29 17:00:00 发布