很好地格式化您的sql查询以便于阅读。
pygments-pprint-sql的Python项目详细描述
将此pygments插件与常用的sql lexer和任何输出一起使用 格式化程序重新格式化SQL查询以提高可读性。
此筛选器修改pygments生成的令牌流 在关键点插入空白以使查询的结构 更明显。
用法
对于编程用法,请在突出显示之前将筛选器添加到lexer中:
from pygments import highlight, lexers, formatters from pygments_pprint_sql import SqlFilter lexer = lexers.MySqlLexer() lexer.add_filter(SqlFilter()) print highlight(text, lexer, formatters.TerminalFormatter())
此插件还通过-f选项与pygmentize cli工具兼容:
pygmentize -F pprint-sql script.sql
注释
像create和alter这样的ddl语句没有格式化,因为格式化 它们确实是一项重大的事业,尤其是对所有口味 关于SQL。
我已经用一个应用程序的查询完成了测试 使用MySQL。一般来说,它应该很好地传输到其他rdbms,但是我 不能保证。
补丁程序总是受欢迎的,只要它们带有测试用例!
备选方案
- SQLParse is a standalone parser and formatter package with some nice options for customizing how formatting occurs.