【发布时间】:2012-01-01 12:01:41
【问题描述】:
我正在从 SQL Server 查询 MySQL 链接服务器。
我可以使用 OpenQuery 查询链接服务器,如下例所示。
SELECT * FROM OPENQUERY(MyLinkedServer, 'SELECT * FROM SomeTable')
我已尝试使用四部分名称查询链接服务器,如下例所示。
SELECT * FROM MyLinkedServer.MyDatabase.DBO.SomeTable
这会返回一个错误,指出“提供程序没有公开必要的接口来使用目录或架构。”
有什么方法可以在不使用 OpenQuery 的情况下查询链接服务器?
谢谢!
更新:根据 Shredder 的回答,正确的语法如下。
SELECT * FROM MyLinkedServer...SomeTable
【问题讨论】:
-
EXEC('SELECT * FROM SomeTable') AT MyLinkedServer- 更好,恕我直言,因为它直接执行 MySQL,并且不会执行像 OPENQUERY 这样可能导致奇怪错误的奇怪事情。
标签: mysql sql-server