Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 从链接服务器读取并在本地数据库上删除_Sql Server_Database_Sql Server 2008_Linked Server - Fatal编程技术网

Sql server 从链接服务器读取并在本地数据库上删除

Sql server 从链接服务器读取并在本地数据库上删除,sql-server,database,sql-server-2008,linked-server,Sql Server,Database,Sql Server 2008,Linked Server,我在不同的数据库上有两个类似的表。我已经链接了远程数据库,并将其数据访问设置为“True” 但是,我无法使以下查询正常工作 GO USE LOCALDB GO DELETE from [dbo].[TableA] WHERE [dbo].[TableA].[UniqueField] = (SELECT [UniqueField] FROM [REMOTESERVER].[REMOTEDB].[dbo].[TableA]) GO 这个查询没有给我任何错误,但它也不会删除UniqueField上

我在不同的数据库上有两个类似的表。我已经链接了远程数据库,并将其数据访问设置为“True”

但是,我无法使以下查询正常工作

GO
USE LOCALDB
GO
DELETE from [dbo].[TableA]
 WHERE [dbo].[TableA].[UniqueField] = (SELECT [UniqueField] FROM [REMOTESERVER].[REMOTEDB].[dbo].[TableA])
GO
这个查询没有给我任何错误,但它也不会删除UniqueField上有匹配项的条目。我现在被阻塞了,这是我想到的唯一一个不会提示错误的查询

编辑:查询显示0行受影响

提前感谢,

EtonB.

思想

我会考虑在本地加载一个表变量,然后使用它删除。这将停止分布式txn启动的任何机会,这可能发生在使用远程服务器数据的本地写入操作中

UniqueField varchar和排序规则兼容吗?或者没有,需要整理。也就是说,可能查询工作正常,但匹配取决于具体情况

这是什么回报

SELECT [UniqueField] FROM [REMOTESERVER].[REMOTEDB].[dbo].[TableA]

它是否适用于某些值,但不适用于所有值?精确的数据类型匹配?等等。

它什么都不做吗?错误超时?是否从REMOTESERVER中选择[UniqueField]。[REMOTEDB]。[dbo]。[TableA]返回行?@gbn:它表示0行受影响,即使检查DB显示有明显匹配的字段。也确实从[dbo]。[TableA]中选择*,其中[dbo]。[TableA]。[UniqueField]=从[REMOTESERVER]。[REMOTEDB]。[dbo]。[TableA]中选择[UniqueField]return rows=从[REMOTESERVER].[REMOTEDB].[dbo].[TableA]中选择[UniqueField]。[TableA]必须返回一个值,查询返回我要匹配的1个唯一字段。这是一个datetime字段。@B:那么这两列都是datetime吗?当您硬编码select时,您确定本地表上的值存在到毫秒吗?我刚刚注意到有4毫秒的差异。。这就成功了。原来我的原始查询是正确的。谢谢!