我创建了一个链接服务器,并将名称命名为test
。
当我写一个像
这样的查询时select *
from openquery(test, 'select * from account')
它工作正常,但是当我运行此查询时:
select *
from openquery(test, 'select * from account join test1 on account.accountid=test1.student_id')
它会抛出错误
OLE DB提供程序" SQLNCLI10"对于链接服务器" test"返回消息 "延期准备无法完成。"。
我不知道加入服务器我做错了什么。
答案 0 :(得分:0)
您可以尝试:
select * from test.master.dbo.account
join
test.master.dbo.test1
on account.accountid=test1.student_id
同样:
select * from test.master.dbo.account
答案 1 :(得分:0)
当2个服务器(链接服务器和本地服务器)中的任何一个使用ms sql 2012及更高版本时。然后在创建链接服务器时确保在提供程序下拉列表中选择SQL Server Native Client 11.0。我一直在收到错误的原因是因为在提供程序下我选择了SQL Server Native Client 10.0而我的链接服务器使用的是sql2008而我的本地服务器是sql2012
解决方案
select * from test.account.dbo.account m
left join
test t
on m.accountid=t.student_id