VB .NET可以在链接服务器上选择但无法更新

时间:2015-09-25 07:07:58

标签: sql-server vb.net

我已使用Management Studio添加了链接服务器。

在vb.net中,我可以SELECT,但我无法更新

即使我将超时设置为4分钟,我也会收到超时错误。 代码如下:

Dim cnx As New SqlClient.SqlConnection
cnx.ConnectionString = "server=MY_LOCAL_SERVER;Trusted_Connection=yes;MultipleActiveResultSets=True"
cnx.Open()

' This is working'
Dim cmd As SqlCommand = cnx.CreateCommand
cnx.CommandText = "SELECT * FROM [MY_LINKED_SERVER].[MYDB].[dbo].[MYTABLE]"
Dim reader As SqlDataReader = cmd.ExecuteReader

' This is not working :( '
cmd.CommandText = "UPDATE [MY_LINKED_SERVER].[MYDB].[dbo].[MYTABLE] SET Foo = @foo WHERE id = @id"
cmd.Parameters.AddWithValue("@foo", "bar")
cmd.Parameters.AddWithValue("@id", "10")
cmd.CommandTimeout = 240
cmd.ExecuteNonQuery() ' Timeout exception

如果我在Sql Management Studio中执行此更新查询,则它正在运行。

编辑:当我执行查询FROM SSMS时,它非常快

编辑:INSERT或DELETE正在运行。只有UPDATE发出超时错误...

编辑:似乎如果我没有在我的更新查询中使用参数,它正在工作,例如:“UPDATE ... SET Foo ='bar'”将工作,而“UPDATE ... SET Foo = @foo “不会工作OO

0 个答案:

没有答案