在Golang的实战中,总会遇到一些场景,比如抓包分析sql指纹,或者是输入sql时检查sql的风险,这类操作都需要解析sql的工具才能够生效。今天,就来介绍一些Golang当中解析sql的工具包和使用方法。
本文介绍的工具是vitess-sqlparser,主要结合了两个sql解析工具:
- xwb1989/sqlparser
- tidbparser
其中,xwb1989/sqlparser项目支持的功能有限,尤其对于DDL没有很好的支持,而tidbparser则功能比较全面。下面以tidbparser为例,讲述一下解析以及分析sql里DDL语句的一种方式。
代码相关写法可以查看这篇文章。首先,我们先自定义一个要验证的DDL语句: