用python去除SQL中的注释

我的博客
在看到这个标题时候肯定有人会想,我写SQL直接在数据库工具上执行就行了啊,工具会自动识别注释的,就是不用工具,把SQL写到存储过程里,数据库也会识别注释不执行的,干嘛非要去掉,费力不讨好。

沙湾ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!


其实是最近在做一个项目,需要在行云库里执行SQL,并且SQL是写在脚本上的,通过JDBC调用,众所周知,SQL的注释很随意,甚至有什么保佑不出bug这种,那么执行的时候就很有可能因为注释里的特殊字符导致一堆莫名其妙的bug出现,并且行云数据库是一个国产的不太完善的数据库,所以本身对特殊字符的支持也不是很好,所以去除注释势在必行。

好了,废话说的够多了,现在上代码,因为行注释和段落注释使用的注释方法不同,所以这里分成两个功能来写

# 去除行注释
# 说明:因为行注释是从--开始一直到结尾都算行注释,所以一个正则就可以搞定了
def rehint_line(sql_values):
  rev= re.compile('--.*\\n?')
  sql_values= re.sub(rev,'\n',sql_values)
return sql_values

当前文章:用python去除SQL中的注释
本文地址:http://scyanting.com/article/dsogshs.html