2016-03-25 20 views
0

openrowsetを使用してオンプレミスSQL ServerからSQL Azureデータベースに接続しようとしていますが、エラーで失敗しています。オンプレミスSQL ServerのOpenRowSetを使用してSQL Azure DBに接続

私のクエリは

SELECT a.* 
FROM OPENROWSET('SQLNCLI', 'Server=sqlazureserver.database.windows.net;Database=dbname;User ID=username;Password=password;Connection Timeout=30;', 'select * from [dbo].[tablename]') AS a; 

と私は取得エラーです:

7399、レベル16、状態1、行11
リンクサーバーのOLE DBプロバイダー "SQLNCLI11"」 (null)」がエラーを報告しました。認証に失敗しました。
レベル16、状態1、行11
リンクサーバー "(null)"のOLE DBプロバイダー "SQLNCLI11"のデータソースオブジェクトを初期化できません。

リンクサーバーを使用して正常に接続できますが、接続文字列が動的なので、そのルートに行きたくありません。

答えて

0

ドキュメントから、オープンローセットがSQL Azureデータベースに対してサポートされていないことがわかりました。

enter image description here

の代わりにOPENROWSET、あなたは同じ

exec ('select * from table') at linkedserver 
+0

ご回答いただきありがとうございますが、私はリンクサーバールートに行くのではなく、接続文字列を動的に使用する代替ソリューションが必要です。 –

0

チェックthisアウトを達成するために、分散クエリを使用することができます。私のために働く。 onprem SQLをAzure SQLにリンクとして追加しました。

関連する問題