我需要解析部分SQL查询(用于SQL注入审计工具)。例如
'1' AND 1=1--应该分解成像这样的记号
[0] => [SQL_STRING, '1']
[1] => [SQL_AND]
[2] => [SQL_INT, 1]
[3] => [SQL_AND]
[4] => [SQL_INT, 1]
[5] => [SQL_COMMENT]
[6] => [SQL_QUERY_END]他们有没有我所基于的SQL的词法分析器,或者像C#的bison这样的好工具(尽管我不愿意写我自己的语法,因为我需要支持MySQL 5的大部分语法,如果不是全部的话)
发布于 2011-03-17 22:18:20
此外,可能有一些方法可以通过Visual studio的数据库版本来利用(由Microsoft)完全解析的T-SQL。
SQL解析器和脚本生成器是
数据库版产品皇冠上的明珠,这两部分构成了数据库项目系统内部工作的基础。
http://blogs.msdn.com/b/gertd/archive/2008/08/21/getting-to-the-crown-jewels.aspx
https://stackoverflow.com/questions/2939694
复制相似问题