【保存版】2013年度発売全パチスロアプリ一覧(iPhone,iPad)

【SQLServer】(自己責任で)32bitOffice環境で64bitMicrosoft.ACE.OLEDB.12.0プロバイダを導入する方法。

SQLServer64bitOffice32bit64bitACEプロバイダ

SQLServerでEXCEL連携する際、32bitSQLServerでは「Microsoft.Jet.OLEDB.4.0」プロバイダを使用していたかと思います。
しかし、64bitSQLServerではこのプロバイダは使えません。
なぜなら、Microsoft.Jet.OLEDB.4.0は32bit用だからです。
代替プロバイダは、「Microsoft.ACE.OLEDB.12.0」になります。

以下のプログラムをインストールするとMicrosoft.ACE.OLEDB.12.0
プロバイダが導入できます。
(64bit版SQLServerでは、AccessDatabaseEngine_X64.exeを
インストールします)
Microsoft Access データベース エンジン 2010 再頒布可能コンポーネント

ただし、このコンポーネントは Office2010の一部 となっています。

サーバーでOfficeをインストールしていることは少ないかと
思いますが、ローカルのテスト環境等ではすでにOffice2010を
インストール済みのこともあるかと思います。

しかも、Office2010が32bitバージョンというケース。

例えば、私の作業マシンの環境は、
・OS:Windows7 64bit
・DB:SQLServer2008R2 64bit
・Office:Office2010 32bit
OS、DBは64bitですが、Officeは32bitです。
(なぜOfficeが32bitかというのは、以下のエントリをどうぞ。)
【Access】office2010(2013)インストール時は32bit版をインストールするべき!

この環境では、上記コンポーネントを追加インストールできまません。
普通にインストールしようとするとすでにOffice32bitが入っているため、
インストーラーのチェックにひっかかり、インストールが中止されてしまいます。
(Officeは32bitと64bitのサイドバイサイドインストールはできません。)

で、これを無理やり導入する方法をご紹介します。
ちなみにマイクロソフト非推奨の手順ですので、本番環境に導入するという
無茶なことはしないほうがよいかと思います。


で、その方法はというと。

<32bitOffice環境に、Microsoft.ACE.OLEDB.12.0を導入する>


参考エントリ
Why can't 32 and 64 bit Access Database Engine (ACE/OLEDB Dataproviders) coexist?

<手順>
1 以下のレジストリエントリにmso.dllが登録されていないことを確認する。
 HKEY_LOCAL_MACHINE¥SOFTWARE¥Microsoft¥
 Office¥14.0¥Common¥FilesPaths

2 ダウンロードした AccessDatabaseEngine_X64.exe
 を適当なフォルダに配置。
 例)"C:¥tmp¥

<強制インストール>
3 コマンドプロンプトから、AccessDatabaseEngine_X64.exe を実行。
 このとき、オプションで、/ passiveを指定。
 例)"C:¥tmp¥AccessDatabaseEngine_x64.exe" /passive

<Office対応>
4 1で確認したレジストリエントリにmso.dllが登録されていることを確認後、
 このキーを削除する。(もしくはリネーム)

5
 動作確認。


ポイントは2点。
・ / passiveスイッチでAccessDatabaseEngine_X64.exeを強制インストール。
 =>インストーラーのチェックを回避するため。

・ レジストリを変更し、64bit版のmso.dllを使用しないようにする
 =>Office2010 32bitを起動した際のエラーを回避するため。これを実行しないと
  Office起動時に再設定処理が走ったり、エラーで起動できなくなってしまいます。

上記手順により、SQLServer2008R2 64ビットとOffice2010 32ビットが
インストールされている環境で、Microsoft.ACE.OLEDB.12.0が使用できるように
なりました。また、Officeも問題なく使用できています。

実は、以前のエントリですでに今回の手順をご紹介していたのですが、
そのときは正常動作しませんでした。その理由は、確認ミス!(涙)
今回動作確認がとれましたので、あらためてエントリを書き起こしました。
【SQLServer】32bitOfficeが入っている環境に64bitACEOLEDBプロバイダを導入できる?

以上、自己責任とはなりますが、お困りの方、最後の手段としてどうぞ。


ちょっと高いけど、T-SQLを丁寧に勉強したいという方におすすめ。
6090円。在庫はあと2冊。(2013/12/15)
>>SQL Server 2005 ストアドプロシージャプログラミング (SQL Server Books)

[Google PR]

Twitterはじめました。プラプラ | Twitter

<< 【Access】ショートカットメニューバーの2003から2010への移行方法について。
【デジモノ】Kindle Fire HDX 7インチが2日間のみ19800円のクリスマスセール中!(5000円引き) >>

[関連エントリ 最新5]

[Google PR]


[最新エントリ 5]

>>トップページ
人気カテゴリ:AccessTips SQLServer CakePHP iPad
過去ログ(全記事一覧)

コメント
コメントする(お気軽にどうぞ)









この記事のトラックバックURL
トラックバック
カテゴリー
プロフィール
お問い合わせ
Powered by NINJA TOOLS
links
recent comment
  • 【Access】vbaでhmacが正しく計算できた!!
    まさ (06/01)
  • 【Access】AccessReportMailメール送信時のポートを25から587へ
    わら (05/31)
  • 【SQLServer】超シンプル!再帰CTE(共通テーブル式)で連続データを作成する。
    sazi (09/08)
  • 【あまっちゃお】Amazon商品検索「あまっちゃお」プロジェクト始動。Ver00-06-00 β
    カメちゃん (07/31)
  • 【Access】あれ?DoCmd.RunCommand acCmdSaveRecordの内部仕様が変わった?
    花姉 (03/17)
  • 【Access】実行中のmdb(自分自身)をバックアップコピーする方法。
    亀 (02/06)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    管理人 (01/31)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    あ (01/31)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    K (11/13)
  • 【VAIOP】VaioXと両持ちできるものすっっごくマニアックなケース。当たり前ですが在庫限り。(笑)
    管理人 (08/04)
recent trackback
  • 【Access】2003安全でない式がブロックされていませんとセキュリティーレベル。
    awgs Foundry (10/29)
  • 【VAIOtypeP】液晶保護シートは、新車のカバーではない。レイアウト社液晶/天板保護フィルムセットRT-VP1FS1
    XMLがキライ。 (04/09)
  • Vistaから、LinkStation(NAS)にアクセスできません。
    そのほかいろいろ (09/06)