Oracle: распарсенный текст процедур.
От: mABC  
Дата: 11.02.03 13:38
Оценка:
Проблема в следующем: можно ли "добраться" до ораклового парсера SQL-кода?
В базе хранятся процедуры, я могу достать их код:
select NAME, TEXT from ALL_SOURCE where NAME like 'P_%' order by NAME, LINE;

Но он там хранится в том виде, в каком эти процедуры программистом писались — со всеми комментариями, переносами строк и прочим форматированием. А могу ли я достать уже распарсенный ораклом текст? Точнее, мне хватило бы разбиения на отдельные команды — где заканчивается одна команда и начинается другая? Т. е. в каких местах я могу вставить вспомогательные команды без ущерба для исходной процедуры?
Конечно, можно это сделать и самому, но ведь оракл уже все распарсивал, когда компилировал эту процедуру!
Re: Oracle: распарсенный текст процедур.
От: VVP Россия 67524421
Дата: 11.02.03 16:13
Оценка:
Здравствуйте, mABC, Вы писали:

ABC>Проблема в следующем: можно ли "добраться" до ораклового парсера SQL-кода?

ABC>В базе хранятся процедуры, я могу достать их код:
ABC>Но он там хранится в том виде, в каком эти процедуры программистом писались — со всеми комментариями, переносами строк и прочим форматированием. А могу ли я достать уже распарсенный ораклом текст?
Видимо нет, по крайне мере бурное обсуждение привело меня и моих ребят именно к такой мысли.
ABC>Точнее, мне хватило бы разбиения на отдельные команды — где заканчивается одна команда и начинается другая? Т. е. в каких местах я могу вставить вспомогательные команды без ущерба для исходной процедуры?
ABC>Конечно, можно это сделать и самому, но ведь оракл уже все распарсивал, когда компилировал эту процедуру!
Поройся в сторону пакетов SYS.DBMS_SQL, SYS.DIANA, SYS.DIUTIL
Никогда не бойся браться делать то, что делать не умеешь. Помни, ковчег был построен любителем. Профессионалы построили Титаник...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.