/ / Як зробити запит для об'єднання локальної бази даних та пов'язаної серверної бази даних - sql, sql-server-2008, linked-server

Як зробити запит для приєднання локальної бази даних і пов'язаної серверної бази даних - sql, sql-server-2008, linked-server

Я створив пов'язаний сервер і даю ім'я як 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" для пов'язаного сервера "Тест" повернув повідомлення "Відкладене приготування не могло бути завершено".

Я не знаю, що я роблю неправильно, щоб приєднатися до сервера.

Відповіді:

0 для відповіді № 1

Ви можете спробувати так:

select * from test.master.dbo.account
join
test.master.dbo.test1
on account.accountid=test1.student_id

так само:

select * from test.master.dbo.account

0 для відповіді № 2

При будь-якому з двох серверів (пов'язаних серверів ілокальний сервер) використовує ms sql 2012 і вище. Потім при створенні пов'язаного сервера переконайтеся, що під папером Under provider виберемо 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