在SP里无法删除远程DB的数据
代码如下:
SET @deletesqlStr=' DELETE a FROM ['+@HostAddress+'].db1.dbo.T1 a '
+' , db2..T2 b '
+' where a.F1 = b. F1 '
+' and a.F2 = b.F2 '
+' and a.F3 = b.F3 '
+' and a.F4 = b.F4 '
+' and a.F5 = b.F5 '
+' and a.F6 = b.F6 '
EXEC(@deletesqlStr)
SELECT @ResultCode = @@ERROR
IF @ResultCode <> 0 GOTO END_PROC1
代码正常执行,@ResultCode为0,无错误。
在HostAddress那台机器上也监视过了,这句代码确实执行了,但是数据没有被删掉。
奇怪的是,如果不是在SP里,而是在查询分析器里单独执行这段,数据就能够被删掉。