Ако PL/SQL процедурата се компилира, трябва да съществува всяка директно реферирана таблица. Бих предположил, че е динамичен SQL. Ако използвате DBMS_SQL, тогава можете да използвате LAST_ERROR_POSITION . Ако използвате EXECUTE IMMEDIATE и имате вашия SQL в удобна променлива, тогава накарайте вашия код да направи нещо като:
begin
execute immediate v_sql;
exception
when others then
declare
v_cur BINARY_INTEGER;
begin
v_cur := dbms_sql.open_cursor;
dbms_sql.parse (v_cur, v_sql, dbms_sql.native);
exception
when others then
dbms_output.put_line (sqlerrm || ' near pos ' ||
substr(v_sql,dbms_sql.last_error_position -10,40));
dbms_sql.close_cursor (v_cur);
raise;
end;
end;