SQL 服务器 : 通过链接服务器访问链接服务器
SQL Server : get access to linked server through linked server
我有 SQL Server 2008 和链接服务器,例如 Server1。通常我执行像
这样的查询
SELECT *
FROM [Server1,1444].[DBName].[dbo].[Table1]
但这次我的目标 table 存储在不同的服务器上。此服务器像 Server2 一样链接在 Server1 上。所以,Server1 的 DBA 给了我一个这样的查询
SELECT *
FROM [Server2].[DB].[dbo].[My_table]
在 Server1 上这个查询 运行s 没有问题,但是当我尝试 运行 它在我自己的服务器上时,如:
SELECT *
FROM [Server1,1444].[Server2].[DB].[dbo].[My_table]
它向我显示一条错误消息,因为我正试图通过其他链接服务器查询一个链接服务器。
我的问题是:如何执行对该 Server2 的查询?
所以我找到了解决方案
SELECT *
FROM openquery([Server1,1444], 'SELECT* FROM [Server2].[DB].[dbo].[My_table]')
我有 SQL Server 2008 和链接服务器,例如 Server1。通常我执行像
这样的查询SELECT *
FROM [Server1,1444].[DBName].[dbo].[Table1]
但这次我的目标 table 存储在不同的服务器上。此服务器像 Server2 一样链接在 Server1 上。所以,Server1 的 DBA 给了我一个这样的查询
SELECT *
FROM [Server2].[DB].[dbo].[My_table]
在 Server1 上这个查询 运行s 没有问题,但是当我尝试 运行 它在我自己的服务器上时,如:
SELECT *
FROM [Server1,1444].[Server2].[DB].[dbo].[My_table]
它向我显示一条错误消息,因为我正试图通过其他链接服务器查询一个链接服务器。
我的问题是:如何执行对该 Server2 的查询?
所以我找到了解决方案
SELECT *
FROM openquery([Server1,1444], 'SELECT* FROM [Server2].[DB].[dbo].[My_table]')