2010-05-09 79 views
1

我正在使用SQL Server 2008企业数据库并使用新的合并语句(当源和目标都是SQL Server 2008数据库表)时,它运行良好。我有另一个数据库表在SQL Server 2005企业数据库中托管。我想知道合并语句是否可以使用SQL Server 2008的一个表作为源,而另一个SQL Server 2005作为目标表?这两个数据库可能不在同一台机器上。关于SQL服务器合并语句

由于事先 乔治

回答

2

否 - MERGE语句必须能够在要插入记录的SQL服务器上运行,你的2005实例不知道该怎么办。

+0

你的意思是源和目标都必须在Sql server 2008上运行?或目标必须在SQL Server 2008上,但源(因为源始终只读)可能在SQL Server 2005上? – George2 2010-05-09 16:03:05

+1

合并语句(或任何sql语句)只能在数据库所在的服务器实例中运行。因此,虽然您可以在访问服务器B的服务器A上运行查询,但实际发生的是服务器A向服务器B发送sql语句,然后服务器B必须针对其自己的数据库运行该语句。如果B是sql 2005,并且该语句包含“合并”,它将无法运行它。 – Ray 2010-05-09 17:18:50

+0

谢谢,问题回答! – George2 2010-05-10 02:42:30