如何使用游标插入行?

时间:2017-04-28 13:55:48

标签: plsql

    DECLARE
         CUSTID ACCOUNT.CUST_ID%TYPE;
         ANO ACCOUNT.A_NO%TYPE;
         TYP ACCOUNT.TYPE%TYPE;
         BALANC ACCOUNT.BALANCE%TYPE;
         STATU ACCOUNT.STATUS%TYPE;
         CURSOR S2 IS SELECT CUST_ID , A_NO , TYPE , BALANCE, STATUS FROM ACCOUNT WHERE STATUS = 'locked' ORDER BY BALANCE desc;
    BEGIN
OPEN S2;
FOR A IN 1..3 LOOP
        FETCH S2 INTO CUSTID ,ANO , TYP, BALANC, STATU ;
            INSERT INTO ACC_LOCKED (A_NO, CUST_ID, TYPE, BALANCE, STATUS)
            SELECT  CUST_ID ,A_NO , TYPE , BALANCE, STATUS FROM ACCOUNT     WHERE STATUS = 'locked' ORDER BY BALANCE desc;
     END LOOP;
     CLOSE S2;
 END;




ORA-00001: unique constraint (PK_ACC_LOCKED) violated

我想知道如何使用cursor.I可以在没有它的情况下完成它,但我希望以不同的方式实现它。

0 个答案:

没有答案