为什么我的SMO查询为每个GO语句返回-1?

时间:2017-11-29 20:52:18

标签: c# sql smo

我使用Microsoft的SMO(SQL Server管理对象)来执行包含GO语句的SQL脚本,因为常规System.Data.SqlClient无法将GO识别为命令。它实际上运行正常(我认为..)但似乎每个GO语句都返回-1。所以使用以下代码..

using (var cnn = new SqlConnection(connectionString))
{
     try
     {
         cnn.Open();
         Console.WriteLine("Connection Successful!");                    
         var server = new Server(new ServerConnection(cnn));
         var rows = server.ConnectionContext.ExecuteNonQuery(SqlStuff.CommandText);                    
         Console.WriteLine($"Script Successful: {rows} affected");
         Console.ReadLine();
     }
     catch (Exception ex)
     {
        Console.WriteLine("Cannot connect to Server: " + ex.Message);
        Console.ReadLine();
     }
}    

我的控制台显示“脚本成功:-47受影响”,查看我的脚本之后是GO的确切数量。我的查询是否正常为每个GO返回-1?我似乎无法找到它的文档,并且它关注我的部分查询未正确执行,即使此时它似乎已生成我需要的表。这是我第一次使用SMO,我只需要确保这是正常的。

0 个答案:

没有答案