Изглежда, че има няколко добри парсера.
Тази SO статия има извадка с помощта на Entity Framework на MS:
Синтактичен анализ на SQL код в C#
Изглежда, че някой друг е развил своя собствен и го е пуснал в Code Project:
http ://www.codeproject.com/KB/dotnet/SQL_parser.aspx
Лично аз бих предпочел решението Entity Framework, тъй като то е създадено и поддържано от MS, но следователно също така вероятно е тясно свързано със SQL Server. Тъй като разглеждате MySQL, може да искате да използвате персонализираното решение на Code Project, тъй като съм сигурен, че след това можете да кодирате в повече персонализирани решения, както изисква граматиката.
Скоро ще използвам това (за Oracle, а не за MySQL), така че, моля, уведомете общността как работи решението!
АКТУАЛИЗИРАНЕ :
Току-що се върнах към това и прочетох коментарите... след по-нататъшно размисъл, наистина бих препоръчал ANTLR, тъй като поддържа множество граматики. Още веднъж, не съм го използвал, така че ще е добре да чуя как се е получило, а от вас зависи да решите.
https://stackoverflow.com/questions/76083/parsing-sql-in-net/76151