1

我有一个 SQL 脚本,一旦表被修改,它将刷新表的依赖视图,比如添加新字段。该脚本将通过 ExecuteNonQuery 运行,请参见下面的示例。

 Using refreshCommand As New SqlClient.SqlCommand("EXEC RefreshDependentViews  'Customer','admin',0", SqlClient.SqlConnection, SqlClient.SqlTransaction)

    refreshCommand.ExecuteNonQuery()

End Using

上面的代码在执行时需要4-5秒,但是当我只复制脚本并直接通过MS SQL运行时,只需要2-3秒。

我的问题是,为什么它们有不同的间隔?

请注意,MS SQL 服务器在我的 PC 本身以及代码上。

谢谢

4

1 回答 1

0

SqlClient默认情况下, SSMS 具有不同的连接级别选项(SET选项),这有时可能是一个因素。我还想知道这两个东西的隔离级别是什么,如果您TransactionScope在代码中使用 etc,这可能会更加复杂。当时也可能只是不同的系统负载。基本上,很难说:但确实有一些事情会影响这一点。

于 2013-08-27T11:18:53.283 回答