Комментарии 1
Но обычные синтаксические анализаторы (ANTLR, например) могут столкнуться с ошибками разбора скриптов, каждый диалект SQL имеет свои собственные особенности.
Не аргумент. Во-первых, там встроена методика восстановления от ошибок. Во-вторых, регулярки также нужно писать другие для разных SQL диалектов.
Время анализа тоже может быть существенным на больших БД.
А регулярки быстро работают? Вы тестили скорость работы ANTLR?
Я написал несколько полезных регулярных выражений и собирал их в одном статическом классе
Они нечитаемые.
В общем статья скорее вредная — лучше использовать полноценный парсер, тем более для SQL диалектов есть PlSql, T-SQL и MySql грамматики.
Почему хотя бы не использовать универсальные токены, на основе которых уже что-то там искать?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Зависимости между SQL объектами: используем регулярные выражения и небольшой алгоритмический фокус