SQL Tips

 

[SQL Server] OLE DB プロバイダー "MSDASQL" では、オブジェクトに列がないか、現在のユーザーがそのオブジェクトに対する権限を持っていないことが示されています。

SQL SERVER→MySQLのリンクサーバーで繋いでデータを取得するSQLを実行した時に以下のようなエラーの対応方法について説明します。

例えば、このようなSQLを実行した時にエラーが発生します。

SELECT *
FROM OPENQUERY(LinkedServereMySQL,'
SELECT UserID
FROM TempData
WHERE Sn = 1)

OPENQUERYでデータを取得していますが、今まで問題なかったSQLがODBCドライブを変更したら以下のエラーが発生しました。

メッセージ 7357、レベル 16、状態 2、行 1
オブジェクト "
SELECT UserID
FROM TempData
WHERE Sn = 1" を処理できません。リンク サーバー "LinkedServereMySQL" の OLE DB プロバイダー "MSDASQL" では、オブジェクトに列がないか、現在のユーザーがそのオブジェクトに対する権限を持っていないことが示されています。

対応方法は以下の通り修正すると解決できます。

SELECT * FROM OPENQUERY(LinkedServereMySQL,'SELECT UserID
FROM TempData
WHERE Sn = 1

もしくは

SELECT * FROM OPENQUERY(LinkedServereMySQL,'SELECT UserID FROM TempData WHERE Sn = 1)

「SELECT * FROM OPENQUERY(LinkedServereMySQL,'」の後に改行するとエラーになります。

このエントリーをはてなブックマークに追加
2017-12-08 15:19:52   352

コメント

[SQL Server] 暗号化、復号化 / ENCRYPTBYPASSPHRASE / DECRYPTBYPASSPHRASE

-.日付:2014-02-28   カテゴリ : -   閲覧数:5967

[SQL SERVER] XMLをテーブル形式に変換するSQL

-.日付:2018-12-27   カテゴリ : -   閲覧数:15

[SQL SERVER] JSON 文字列をテーブル形式に変換するSQL

-.日付:2018-12-27   カテゴリ : -   閲覧数:19

[SQL SERVER]日付をフォーマット(format)された文字列に変換する

-.日付:2018-12-27   カテゴリ : -   閲覧数:17

[SQL Server] sidを指定してcreate userでDBアカウント作成方法

-.日付:2018-12-27   カテゴリ : -   閲覧数:19

[SQL SERVER] Trace Logのtrcファイルの内容を確認する方法

-.日付:2018-12-05   カテゴリ : -   閲覧数:15

[SQL Server] 「,」カンマ区切りで結果を返す

-.日付:2018-05-29   カテゴリ : -   閲覧数:153

Copyright © 2015 INNOYA.COM All rights reserved. RSS