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可以在没有它的情况下完成它,但我希望以不同的方式实现它。