EXCEPTION: IS there a predefined exception like ON ERROR (that handles any kind of errors) [message #18647] |
Fri, 08 February 2002 07:46 |
Sabrina
Messages: 76 Registered: February 2002
|
Member |
|
|
How do i raise an exception?
I want to raise a simple exception.. after the INSERT statement,
as to
When the INSERT STATEMENT FAILS(For any reason), i want to take that record and try to
INSERT it in another table(the one that doesn't have any constraints)..
And the proc should keep running..
So I AM LOOKING FOR A EXCEPTION LIKE
WHEN ERROR(doesn't matter what type of error) THEN
INSERT INTO TABLE
VALUES
();
Does Oracle have something predefined like ON ERROR or
can i use WHEN OTHERS?
Please help.
MY PROCEDURE LOOKS LIKE:
D1.tbl_claimshistory table insert script:
create or replace PROCEDURE cursor_claim_transfer_d0_to_d1
(INPUT_DATE IN DATE) AS
V_ClmID d0.tbl_claims.claimid%TYPE;
V_CKey d0.tbl_Claims.CarrierKey%TYPE;
V_CISID d0.tbl_Claims.CISID%TYPE;
V_Mbox d0.tbl_Claims.Mailbox%TYPE;
V_DepTime d0.tbl_ClaimTrack.DepositTime%TYPE;
CURSOR cursor_tbl_claims is
select C.ClaimID,C.CarrierKey,C.CISID,C.Mailbox
FROM d0.tbl_claims C, d0.tbl_ClaimTrack T
where d0.C.ClaimID = d0.T.ClaimID
BEGIN
OPEN cursor_tbl_claims;
LOOP
FETCH cursor_tbl_claims INTO
V_ClmID,V_CKey,V_CISID,V_Mbox,V_DepTime;
EXIT WHEN cursor_tbl_claims%NOTFOUND;
INSERT INTO tbl_ClaimsHistory
(CLAIMID,CARRIERKEY,CISID,MAILBOX,DEPOSITTIME)
VALUES
(V_ClmID,V_CKey,V_CISID,V_Mbox,V_DepTime);
END LOOP;
CLOSE cursor_tbl_claims;
COMMIT0;
END;
|
|
|