Можно ли визуализировать дерево разбора PL / SQL? - PullRequest
1 голос
/ 31 октября 2011

Я ищу способ каким-то образом экспортировать или визуализировать дерево разбора произвольного объекта PL / SQL в Oracle таким образом, чтобы можно было сравнивать деревья разбора двух похожих объектов.Возможно ли это?

1 Ответ

3 голосов
/ 31 октября 2011

Теоретически это должно быть возможно (и потребуется много времени для реализации!):

PL / SQL анализируется и сохраняется в БД в виде древовидной структуры PLUS m-кода.Структура - это некоторый вариант DIANA плюс IDL, который, в свою очередь, является тем, что Ada использует для хранения результатов анализа (PL / SQL довольно похож на Ada).Для справки см. http://download.oracle.com/docs/cd/B14117_01/appdev.101/b10807/e_limits.htm и http://cs.felk.cvut.cz/10gr2/appdev.102/b14261/tuning.htm

Другой вариант - создать собственный синтаксический анализатор. Начальная точка - http://it.toolbox.com/blogs/oracle-guide/building-a-plsql-code-parser-using-plsql-part-1-29704

. Очень полезный ресурс - http://www.blackhat.com/presentations/bh-usa-06/BH-US-06-Finnigan.pdf - вы найдете много информации о том, как извлечь DIANA- / IDL-информацию из БД Oracle, которая должна помочь вам в достижении вашей цели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...