MSSQLSERVER_7357

属性
製品名 SQL Server
イベント ID 7357
イベント ソース MSSQLSERVER
コンポーネント SQLEngine
シンボル名 RMT_ZERO_COL_OBJECT
メッセージ テキスト オブジェクト "%ls" を処理できません。 リンク サーバー "%ls" の OLE DB プロバイダー "%ls" では、オブジェクトに列がないか、現在のユーザーがそのオブジェクトに対する権限を持っていないことが示されています。

説明

このエラーは、通常、Open Query ステートメントに渡されたクエリに問題がある場合に 発生します

ユーザー アクション

このエラーの次の潜在的な原因と推奨される解決策を確認します。

OPENQUERY は結果セットを返しません

  • 挿入、更新、または削除の操作を実行するには、4 部構成の名前 (linked_server_name.catalog.schema.object_name) を使用します。
  • OPENQUERY「OPENQUERY (Transact-SQL)」のINSERTUPDATE「例」セクションに記載されているように、OLE DB プロバイダーの機能に応じて、関数を 、またはDELETEステートメントのターゲット テーブルとして参照します。

パススルー クエリの OLEDB プロバイダーから 0 列が返される

  • パススルー クエリ テキストを調べて修正し、リモート データ ソースから有効な列が返されることを確認します。
  • そのデータ ソースに対して提供されているクライアント ツールを使用して、リモート データ ソースに対して直接パススルー クエリを実行し、少なくとも 1 つの有効な列が返されるようにします。 パススルー クエリの例については、OPENQUERY (Transact-SQL) を参照してください
  • 代替 linked_server_name.database.schema.objectとして、4 部構成のリンク サーバー クエリを使用します。

クエリの最初の行はコメントです

  • クエリまたはプロシージャの末尾にコメントを移動します。