代码之家  ›  专栏  ›  技术社区  ›  Kyle Rosendo

验证有效的SQL字符串

  •  5
  • Kyle Rosendo  · 技术社区  · 16 年前

    C中是否有执行简单SQL字符串验证的方法(或现有库,不一定内置于.NET中)?

    场景:构建更新语句以减少SQL负载和单个语句的负载。如果字符串构建执行了“奇怪”的操作,例如以逗号结尾,那么我希望能够验证字符串是否正确。

    3 回复  |  直到 15 年前
        1
  •  5
  •   Gabriel McAdams    16 年前

    如果要使用SQL Server验证SQL,可以通过添加

    SET PARSEONLY ON
    

    在你的剧本之前,然后

    SET PARSEONLY OFF
    

    在你的剧本之后。


    如果需要避免访问数据库,那么也许可以使用 Microsoft Visual Studio Team System 2008 Database Edition GDR 包括(它们有处理SQL解析和脚本生成的代码)。如果没有数据库版本或团队套件,可以下载试用版以获取程序集。

    Here is a link 我发现有人在哪里使用这些组件。

        2
  •  0
  •   Craig    16 年前

    这个第三方组件在不访问服务器的情况下很好地验证了SQL。 SqlParser

        3
  •  -1
  •   sth    15 年前

    我注意到如果你申报新的 System.Data.SqlClient.SqlConnection 对象并设置 ConnectionString 字段到语法上无效的连接字符串,它将引发异常,因此这是一种检查方法。

    System.Data.SqlClient.SqlConnection foo
            = new System.Data.SqlClient.SqlConnection();
    foo.ConnectionString = "not a valid connection string"; //exception thrown here