很好地格式化您的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.

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java重写   java有一种制作jre1的方法。8作为jre1运行。7.   java从Android应用程序向AWS S3上传文件   java是一种正确的匿名子类化TimerTask的方法,在run方法中保留对“this”的引用   c#应用程序开发:我应该检查表上的primarykey还是假设它应该在那里?   swing在Java中绘制二叉树如何调用函数   网络编程在Java中通过按钮终止服务器程序   mysql从java创建SQL函数导致异常   java文件系统找不到指定的路径   JavaSpring安全性可用于GET,但不能用于其他方法   带有PDFBox的java标记PDF   Java swing,JButton在第一次按下按钮时不会调整大小,但在第二次按下按钮时会调整大小   java是我的PropertyLoader单例线程安全吗?   java如何在kafka consumer中按内容设置主题?   java优化jtable   从java包创建可执行jar文件   getLastKnownLocation()上的java Android应用程序崩溃   java RestTemplate:如何发送多部分?   JavaDropWizard:从同一个类生成html和json