簡體   English   中英

我是否必須使用OpenQuery從SQL Server查詢MySQL鏈接服務器?

[英]Do I have to use OpenQuery to query a MySQL Linked Server from SQL Server?

我正在從SQL Server查詢MySQL鏈接服務器。

我可以使用OpenQuery查詢鏈接服務器,如下例所示。

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

我嘗試使用四部分名稱查詢鏈接服務器,如下例所示。

SELECT * FROM MyLinkedServer.MyDatabase.DBO.SomeTable

這將返回一個錯誤,指出“提供程序不公開必要的接口以使用目錄或模式。”

有沒有辦法在不使用OpenQuery的情況下查詢鏈接服務器?

謝謝!

更新:Per Shredder的答案,正確的語法如下。

SELECT * FROM MyLinkedServer...SomeTable

這是可能的,但MS建議您使用openquery:

此方法允許SQL Server將命令直接發送到鏈接的OLAP提供程序,而不嘗試解析它。

你可以看一下例子這里下的“鏈接服務器的例子有四個部分組成的名稱”

另外,我發現了這個

如果收到這些錯誤消息,[Linked DB]架構中可能缺少某個表,或者您可能沒有該表的權限。

我將驗證您的mysql數據庫是否已授予您的SQL服務器的訪問權限。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM