栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用Python解析SQL

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Python解析SQL

我已经对这个问题进行了广泛的研究。Python-
sqlparse是一个非验证解析器,实际上并不是您所需要的。antlr中的示例需要大量工作才能在python中转换为不错的ast。sql标准语法在这里,但是您自己转换它们将是一项全职工作,并且很可能只需要它们的一个子集,即无需联接。您也可以尝试查看gadfly(一个python
sql数据库),但是由于他们使用了自己的解析工具,因此我避免了它。

就我而言,我基本上只需要一个where子句。我尝试了用pyparsing编写的booleneo(布尔表达式解析器),但最终还是从头开始使用pyparsing。Mark
Rushakoff的reddit帖子中的第一个链接提供了一个使用它的SQL示例。Whoosh全文搜索引擎也使用它,但是我没有查看源代码来了解如何使用。

Pyparsing非常易于使用,您可以非常容易地对其进行自定义,使其与sql不完全相同(不需要使用大多数语法)。我不喜欢ply,因为它使用了一些使用命名约定的魔术。

简而言之,请尝试一下pyparsing,它很可能足够强大,可以满足您的需求,并且与python的简单集成(具有轻松的回调和错误处理)将使您的使用起来非常轻松。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/506535.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号