代码之家  ›  专栏  ›  技术社区  ›  rsapru

在C中使用正则表达式拆分SQL语句块#

  •  0
  • rsapru  · 技术社区  · 16 年前

    我们是否可以编写一个正则表达式,以便将存储过程拆分为多个SQL语句。

    编辑:我试图解决这个问题 http://tsqlparsergdr.codeplex.com/

    3 回复  |  直到 14 年前
        1
  •  2
  •   LenW    16 年前

    如果您有可以使用的存储过程语言的语法 ANTLR

    需要一组regex表达式来处理整个过程。例如,regex to mach只插入可能跨越多行的语句,并且可能包含来自proc的局部变量等等。

        2
  •  2
  •   James Anderson    16 年前

    如果您正在寻找能够处理任何可能的SQL过程集的东西,那么regex不会破解它!SQL有一个复杂的递归语法,而且,总会有一些sub-select、group-by或literal会破坏基于regex的解析器。

    网络上有许多SQL-92语法定义可供这些解析器生成器使用,因此大部分工作已经为您完成—剩下的部分—编写解析器应用程序逻辑—还远远不是琐碎的工作。

        3
  •  1
  •   Jan Goyvaerts    16 年前