*

【SQL Server 2012】SQLでエクセル表示の実行エラーの対処法

公開日: : 最終更新日:2015/01/12 データベース , , , ,

SQLでエクセル表示を実行した時にエラーとなった場合の対処法。

実はSQLでエクセルファイルを表示するにあたり、色々なエラーに遭遇しました。ということで、対処方法を記録しておきたいと思います。

■エラーその1

SQL Server 2012をインストールしただけの状態で、ManagementStudioでSQLを実行した時に出力したエラー
SQL Server によって、コンポーネント ‘Ad Hoc Distributed Queries’ の STATEMENT ‘OpenRowset/OpenDatasource’ に対するアクセスがブロックされました。このサーバーのセキュリティ構成で、このコンポーネントが OFF に設定されているためです。システム管理者は sp_configure を使用して、’Ad Hoc Distributed Queries’ の使用を有効にできます。’Ad Hoc Distributed Queries’ を有効にする手順の詳細については、SQL Server オンライン ブックで、’Ad Hoc Distributed Queries’ を検索してください。

 

(1)色々調べた結果、まずは ↓ のSQLを実行しました。
sp_configure ‘show advanced options’, 1;
GO
RECONFIGURE;
GO
sp_configure ‘fill factor’, 100;
GO
RECONFIGURE;
GO

 

■エラーその2

上記のSQLを実行後、再度、エクセルファイル表示のSQLを実行した時のエラー
OLE DB プロバイダー “Microsoft.ACE.OLEDB.12.0” が登録されていません。

 

(2)調べてみると
【Microsoft Access データベース エンジン 2010 再頒布可能コンポーネント】
 なるものが必要らしく、ダウンロードしてサーバーへインストール。
http://www.microsoft.com/ja-jp/download/details.aspx?id=13255

 

■エラーその3

上記をインストールした後に出力したエラー
SQL Server によって、コンポーネント ‘Ad Hoc Distributed Queries’ の STATEMENT ‘OpenRowset/OpenDatasource’ に対するアクセスがブロックされました。このサーバーのセキュリティ構成で、このコンポーネントが OFF に設定されているためです。システム管理者は sp_configure を使用して、’Ad Hoc Distributed Queries’ の使用を有効にできます。’Ad Hoc Distributed Queries’ を有効にする手順の詳細については、SQL Server オンライン ブックで、’Ad Hoc Distributed Queries’ を検索してください。

 

(3)アドホックが有効でないといわれたので ↓ のSQLを実行
–アドホッククエリ有効化(OPENROWSETを実行可能にする)
EXEC sp_configure ‘Ad Hoc Distributed Queries’, 1;
RECONFIGURE;

 

■エラーその4

アドホッククエリを有効にした後に出力したエラー
メッセージ 7399、レベル 16、状態 1、行 1
リンク サーバー “(null)” の OLE DB プロバイダー “Microsoft.ACE.OLEDB.12.0” により、エラーがレポートされました。アクセスが拒否されました。
メッセージ 7350、レベル 16、状態 2、行 1
リンク サーバー “(null)” の OLE DB プロバイダー “Microsoft.ACE.OLEDB.12.0” から列情報を取得できません。

 

(4)アクセス拒否とかされたので、調べて ↓ のSQLを実行
USE master
EXEC sp_MSset_oledb_prop N’Microsoft.ACE.OLEDB.12.0′ , N’AllowInProcess’ , 1
EXEC sp_MSset_oledb_prop N’Microsoft.ACE.OLEDB.12.0′ , N’DynamicParameters’ , 1

上記、4つのエラーを乗り越えようやく、表示することができました。

Adsense

関連記事

データベース

【レプリケーション】SQL Server 2012 Expressでレプリケーション

Windows Server 2012のSQL Server 2012 Expressを二台用意して

記事を読む

データベース

【SQL Server 2012】バッチ(コマンドプロンプト)でバックアップ

バッチ(コマンドプロンプト)を使って、SQL Server 2012のバックアップを取得します。

記事を読む

データベース

【SQL Server】Excel VBAのレコードセットを使ってテーブルの一括更新

前々回は読み取り専用でレコードセットへ取得し、結果をエクセルへ書き出し 前回はVBAから更新S

記事を読む

データベース

【SQL Server 2012 Express】Windows Server 2012にインストールしてみる

Windows Server 2012にSQL Server 2012をインストールしてみる。 以

記事を読む

データベース

【SQLServer2012】バックアップ/リストア方法 リストア編

SQL Server 2012のデータベースをManagement Studioを使用して、リストア

記事を読む

データベース

【コマンドプロンプト】完成版!cmdでSQLの結果を変数に取得

以前、 【コマンドプロンプト】cmdでSQLの結果を変数に取得する方法 を書きましたが、

記事を読む

データベース

【SQL Server 2012】Management Studioでサンプルデータベース(mdfファイル)をアタッチ

以前、Windows Server 2012にMicrosoftR SQL ServerR 2012

記事を読む

データベース

【SQL Server】Management Studioを使ったトランザクションログファイルの圧縮

「ファイルが書き出せない」と問い合わせを受け、DBサーバーのマイコンピュータ確認したら、Dドライブ(

記事を読む

データベース

【SQL Server 2012】テーブル、カラム、主キー、NULL制約、データ型、長さ、INDEXの有無の一括表示

職場のシステムリプレースに伴い、データベースのテーブル(カラム)の一覧が必要になりました。 普

記事を読む

データベース

【SQL Server】アンインストール手順

手順としては、http://technet.microsoft.com/ja-jp/library/

記事を読む

Adsense

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Adsense

Microsoft Office
【Access】削除クエリの「指定されたテーブルから削除できませんでした。」の対処法

削除クエリで「指定されたテーブルから削除できませんでした。」と ポッ

Microsoft Office
【PowerPoint】表や図形、画像オブジェクトの位置をピッタリ合わせる方法

パワーポイントで、図形や画像等のオブジェクトの細かい位置調整は、 完

データベース
【SQL Server】Excel VBAのレコードセットを使ってテーブルの一括更新

前々回は読み取り専用でレコードセットへ取得し、結果をエクセルへ書き出し

application
【Visual Studio】デバック、ブレークポイントで止まらない。

Visual Studio 2015でVB.netのプログラムをデバッ

データベース
【SQL Server】Excel VBAでSELECT文を実行してレコードセットへ取得

前回は、テーブルのレコードをVBAで直接更新(Insert/updat

→もっと見る

PAGE TOP ↑