-- How sane people do this create or replace procedure find_string(str in varchar, prc out sys_refcursor) as begin open prc for select row_number() over(order by line) as id, name, line, text from sys.all_source where lower(text) like '%' || lower(str) || '%' and type in ('PROCEDURE', 'TRIGGER', 'FUNCTION'); end; / var rc refcursor print '' execute find_string('н_люди', :rc) column id heading "No." format 999999 column name heading "Имя объекта" format a19 column line heading "# строки" format 9999 column text heading "Текст" format a44 print rc;