做SQL审核系统时,想对用户输入的SQL语句做压缩(用于存入DB中)和美化(用于界面展示)。
找了两个python相关的库:
`python-sqlparse`
这个库对简单的一些select语句美化效果还可以,但是稍微复杂一点的SQL,美化的效果不明显,比如这样的SQL:
CREATE TABLE `t1` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='测试表1';
`pygmentize`: 这个库缺点太多
各位有没有相关的库推荐的?JS相关的库也可以
对SQL美化倒是可以用上面的sqlparse,至于对sql压缩可以通过剔除多余的字符串来实现。