是否有任何框架可以将类似SQL的查询解析为其组件?
我对为我使用的CMS编写类似SQL的查询语法感兴趣。这个想法是CMS查询可以用SQL-ish语法编写,我会将其转换为通过CMSAPI执行 没有字段或表格选择,因此我需要一些方法来获得:是否有任何框架可以将类似SQL的查询解析为其组件?,sql,text-parsing,Sql,Text Parsing,我对为我使用的CMS编写类似SQL的查询语法感兴趣。这个想法是CMS查询可以用SQL-ish语法编写,我会将其转换为通过CMSAPI执行 没有字段或表格选择,因此我需要一些方法来获得: SELECT WHERE Something = 'something' AND (SomethingElse != 'something' OR AnotherThing == 'something') 从本质上讲,我需要一些方法来根据WHERE子句的括号和/或正确地对它们进行分组 是否有这样做的框架?什么时
SELECT WHERE Something = 'something' AND (SomethingElse != 'something' OR AnotherThing == 'something')
从本质上讲,我需要一些方法来根据WHERE子句的括号和/或正确地对它们进行分组
是否有这样做的框架?什么时候完成的一些例子?我不想在这里重新发明轮子,我知道过去一定有其他人做过这件事。答案是肯定的,有许多框架可以模拟SQL并转换为SQL。Linq和各种Linq翻译器就是一个很好的例子。确切地知道您使用的是哪种CMS,以及您使用的是哪种语言和平台,这将很有帮助。一些支持代码查询的.NET ORM包括: NHibernate-允许在字符串中使用称为HQL的SQL语言,或使用表达式列表和Linq进行更多基于代码的查询构造 Linq2SQL—即将推出,但对于更简单的应用程序,它应该可以。该框架生成表和域对象之间映射的DAO类,您可以使用编码的Linq查询来处理这些类,非常类似于实际的表
当然,您也可以使用好的标准ADO.NET和字符串SQL查询。这有许多缺点,但是如果您想在代码中包含查询,为什么不将它们变成真正的SQL呢?如果要隐藏表结构,可以在提交查询之前转换表名,这样web层中包含的SQL(抖动)就不会在数据库中运行。然后我会;这个网站是关于帮助的,而不是你的自我。这是什么语言?许多语言都有类似的功能……但问题是——我不会转换成SQL。我正在将我的“SQL-ish”语法转换为一系列API调用。