Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Lexing von partiellem SQL in C#

Scheint, dass es da draußen ein paar gute Parser gibt.

Dieser SO-Artikel enthält ein Beispiel mit dem Entity Framework von MS:
Analysieren von SQL-Code in C#

Anscheinend hat jemand anderes seine eigenen gerollt und auf Code Project hochgeladen:
http ://www.codeproject.com/KB/dotnet/SQL_parser.aspx

Ich persönlich würde mich für die Entity Framework-Lösung entscheiden, da sie von MS erstellt und gepflegt wurde, aber wahrscheinlich auch deshalb eng mit SQL Server gekoppelt ist. Da Sie sich MySQL ansehen, möchten Sie vielleicht die benutzerdefinierte Lösung von Code Project verwenden, da Sie dann sicher mehr benutzerdefinierte Lösungen codieren können, wenn die Grammatik dies erfordert.

Ich werde dies bald verwenden (für Oracle, nicht MySQL), also lassen Sie die Community bitte wissen, wie die Lösung funktioniert!

AKTUALISIEREN :
Ich bin gerade darauf zurückgekommen und habe die Kommentare gelesen... nach weiterem Nachdenken würde ich ANTLR wirklich empfehlen, da es mehrere Grammatiken unterstützt. Noch einmal, ich habe es nicht benutzt, also wäre es gut zu hören, wie es geklappt hat, und es liegt an Ihnen, zu entscheiden.
https://stackoverflow.com/questions/76083/parsing-sql-in-net/76151