create or replace procedure next_country (code in varchar2, c_code out varchar2, c_name out varchar2) as row rowid; newrow rowid; begin select rowid into newrow from country where country_code = code; select min(rowid) into row from country where rowid > newrow; select country_code, country_name into c_code, c_name from country where rowid = row; exception when no_data_found then raise_application_error(-20101,'Record does not exist'); null; end; /