小编典典

解析SQL查询并拉出列名和表名

sql

我有一个这样的查询脚本:

从dbo.View1中选择View1.OrderDate,View1.Email,SUM(View1.TotalPayments)WHERE(View1.OrderStatus
=’Completed’)GROUP BY View1.OrderDate,View1.Email
HAVING(SUM(View1.TotalPayments)> 75);

有什么方法可以从SQL查询中提取一些关键信息?例如表名和列名,我有两个问题:

  1. 我确实搜索了一些解析器,例如ANTLR,但找不到用于解释此解析器C#语言用法的文档。
  2. 有什么方法可以使用实体框架解析sql查询?我的查询是完全动态的,它们是在运行时创建的

阅读 160

收藏
2021-04-28

共1个答案

小编典典

我认为最好的答案是使用Irony解析器:http
//irony.codeplex.com/

Hanselman与如何使用它来解析SQL有很好的链接:http
:
//www.hanselman.com/blog/TheWeeklySourceCode59AnOpenSourceTreasureIronyNETLanguageImplementationKit.aspx

我希望这会有所帮助,并祝您好运!

2021-04-28