python是个很强大的工具, 一些实践经验记录分享下,欢迎讨论
2. sqlparse
sqlparse是Python的一个解析SQL语言的库,官网地址为python-sqlparse, 主要方法如下()
- sqlparse.split(sql, encoding=None)
- 输入:一堆sql字符串,返回每个sql作为List中的元素
- sqlparse.format(sql, encoding=None, **options)
- 输入:一个sql, options
- sqlparse.parse(sql, encoding=None)
- 输出:statements构成的元组
其中parse用的不是很习惯, 所以使用方法为
1. 获取运行日志输入
2. 清理得到sql
3. sqlparse.format(sql, strip_comments=True)清理comment
4. 清理\n等其他字符
5. sqlparse.format(sql, keyword_case='upper', reindent=True)获取格式化的输出
6. 按照格式化输出进行逻辑(正则)分析, 比如from, where等