Ispirer Website
Ispirer Capabilities - Oracle Migration
Free Trial
Oracle Exception Handler to HiRDB
Oracle Exception to Exception Handler.
Oracle:
WHEN { exception_name1 [OR exception_name2] ... | OTHERS } THEN statement ; [statement ; ] ... ]
HiRDB:
DECLARE { CONTINUE | EXIT } HANDLER FOR { SQLERROR | NOT FOUND | exception_name1 | SQLCODE VALUE sqlcode_value1 } [ , { SQLERROR | NOT FOUND | exception_name2 | SQLCODE VALUE sqlcode_value2 } ] ... statement ; [statement ; ] ...
EXAMPLE:
Oracle:
create or replace procedure sp_err is Exc1 exception; Exc2 exception; var FLOAT; begin select id into var from f; EXCEPTION WHEN Exc1 or Exc2 THEN DBMS_OUTPUT.PUT_LINE('Error.'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('Unexpected error.'); end;
HiRDB:
create procedure sp_err() LANGUAGE SQL begin DECLARE var FLOAT; DECLARE Exc1 CONDITION; DECLARE Exc2 CONDITION; DECLARE EXIT HANDLER FOR Exc1, Exc2 begin WRITE LINE ('Error.') ; end; DECLARE EXIT HANDLER FOR SQLERROR begin WRITE LINE ('Unexpected error.') ; end; select id into var from f; end