我有这个查询
UPDATE linkeddb...table SET field1 = 'Y' WHERE column1 = '1234'
这需要23秒才能选择和更新一行
但是,如果我使用openquery(我不想这样做),则只需半秒钟。
我不想使用openquery的原因是,我可以安全地向我的查询中添加参数,并且可以避免SQL注入。
有人知道它运行如此缓慢的任何原因吗?
这是一个可供选择的想法。在远程服务器上创建存储过程以执行更新,然后从本地实例调用该过程。
/* On remote server */ create procedure UpdateTable @field1 char(1), @column1 varchar(50) as update table set field1 = @field1 where column1 = @column1 go /* On local server */ exec linkeddb...UpdateTable @field1 = 'Y', @column1 = '1234'