create or replace procedure previous_aircraft (code in varchar2, a_code out varchar2, a_number out varchar2, a_fircode out varchar2 , a_firclass out number, a_execode out varchar2 , a_execlass out number, a_ecocode out varchar2 , a_ecoclass out number) as row rowid; newrow rowid; begin select rowid into newrow from aircraft where acr_code = code; select max(rowid) into row from aircraft where rowid < newrow; select acr_code,acr_number, fir_code,fir_class, exe_code,exe_class, eco_code,eco_class into a_code,a_number,a_fircode,a_firclass,a_execode,a_execlass,a_ecocode,a_ecoclass from aircraft where rowid = row; exception when no_data_found then raise_application_error(-20101,'Record does not exist'); null; end; /