代码之家  ›  专栏  ›  技术社区  ›  Kiquenet user385990

用于语法检查Oracle语句的C#Sql解析器

  •  2
  • Kiquenet user385990  · 技术社区  · 14 年前

    我想用C#解析文件.SQL的SQL代码。

    具体来说,有没有免费提供的解析器可以解析C#.NET中的SQL代码?更好的是免费软件,包括源代码,易于使用。

    我用甲骨文

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

    你可以试试 ANTLR .
    grammar page 你会发现一些与Oracle相关的语法。

    不相关的,有没有办法只“准备”语句而不执行?这样您就可以使用Oracle检查语法,然后捕获代码中的最终错误。这将帮助您跳过复制Oracle中已有的功能。更不用说在不同版本的Oracle之间处理更改的问题了。

    编辑:
    重新评论代码示例:我简单地使用了ANTLR,在互联网上很难找到代码示例。我找到的主要来源是 examples from ANTLR download page . 现在我看到泰伦斯·帕尔,ANTLR的作者, published new book 附带的源代码包含更多 ANTLR examples .

        2
  •  0
  •   James Wang    13 年前

    General SQL Parser 可以在不连接数据库的情况下执行脱机SQL语法检查。它支持Oracle、SQL Server、DB2、MySQL、MS-ACCESS、Teradata和PostGreSQL。

    但它是一个商业SQL库,不是开源的。

        3
  •  0
  •   user10725477    6 年前

    这个 miniSqlParser 可以解析和检查SQL语句。这是一个C#和开源的程序集。 SQL Formatter 是使用此程序集的缩进SQL的web应用程序。请试一试。