针对master数据库运行的SQL Server OPENQUERY

时间:2018-04-05 15:58:11

标签: sql-server-2008-r2 sql-server-2016 linked-server openquery

我有以下声明

SELECT * FROM OPENQUERY(MyLinkedServer,'SELECT * FROM Table')

失败的错误

  

OLEDB提供商" SQLNCLI10"对于链接服务器" MyLinkedServer"回   消息"无法完成已缓冲的准备"

当我尝试

SELECT * FROM OPENQUERY(MyLinkedServer,'SELECT DB_NAME()')

我可以看到这些语句是针对链接服务器上的master数据库运行的。

我试过了

SELECT * FROM OPENQUERY(MyLinkedServer,'USE MyDB; SELECT * FROM Table')

但这也告诉我声明无法准备。

如何控制OPENQUERY运行的链接服务器上的哪个数据库?

我运行查询的SQL服务器版本是2008R2,远程服务器是2016SP1

1 个答案:

答案 0 :(得分:1)

您可以使用由三部分组成的名称:

Chart