create or replace procedure last_city (c_citycode out varchar2, c_cityname out varchar2, c_shortname out varchar2, c_parttype out varchar2, c_countrycode out varchar2, c_gmttime out varchar2, c_cityaddr1 out varchar2, c_cityaddr2 out varchar2, c_cityaddr3 out varchar2, c_airaddr1 out varchar2, c_airaddr2 out varchar2, c_airaddr3 out varchar2 ) as row rowid; begin select max(rowid) into row from city; select city_code,city_name,short_name,part_type,country_code, gmt_time, city_addr1,city_addr2,city_addr3,air_addr1, air_addr2,air_addr3 into c_citycode,c_cityname,c_shortname,c_parttype,c_countrycode, c_gmttime,c_cityaddr1,c_cityaddr2,c_cityaddr3,c_airaddr1, c_airaddr2,c_airaddr3 from city where rowid = row; exception when no_data_found then raise_application_error(-20101,'Record does not exist'); null; end; /