【问题标题】:C# HOW TO EXECUTE GO QUERY [duplicate]C#如何执行去查询[重复]
【发布时间】:2017-03-22 07:07:16
【问题描述】:

如何在 C# 上运行 GO 查询。以下是我的查询

            sqlConnection.Open();
            cmd.CommandText = ("USE Repository" +
                               "GO" +

                               "DECLARE     @return_value int," +
                                           "@o_error_code int," +
                                           "@o_error_msg varchar(2000)" +

                               "EXEC  @return_value = [dbo].[XCENTER_CUST_CREATE_UPDATE]" +
                                           "@i_input_xml = N'<xml code>'," +
                                           "@i_transaction_id = N'100A'," +
                                           "@o_error_code = @o_error_code OUTPUT," +
                                           "@o_error_msg = @o_error_msg OUTPUT" +

                               "SELECT      @o_error_code as N'@o_error_code'," +
                                           "@o_error_msg as N'@o_error_msg'" +

                               "SELECT      'Return Value' = @return_value" +

                               "GO");
            cmd.CommandType = CommandType.Text;
            cmd.Connection = sqlConnection;
            reader = cmd.ExecuteReader();
            dt.Load(reader);
            DT1.DataSource = dt;

这是在我按下按钮后运行,xml代码的值在文本框中

【问题讨论】:

    标签: c#


    【解决方案1】:

    GO 不是 T-SQL 命令。它仅被某些工具识别为批处理分隔符。请参阅文档(在备注下)

    https://msdn.microsoft.com/en-us/library/ms188037.aspx

    这意味着您只能从 SSMS 或 sqlcmd 或一些识别它的工具中使用它。

    【讨论】:

    • 所以不可能? :(
    • 您可以使用与 SSMS 关联的 SMO dll-s。检查(此博客):weblogs.asp.net/jongalloway/Handling-2200_GO_2200-Separators-in-SQL-Scripts-2D00-the-easy-way
    猜你喜欢
    • 2020-09-14
    • 1970-01-01
    • 1970-01-01
    • 2017-06-05
    • 2012-08-25
    • 2016-07-18
    • 2014-01-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多