2019年1月24日木曜日

64bit MS-Access 2019をインストールしているのに、SQL-ServerでACE.OLEDB.12.0が使えないピンチ!!

愛用の節電・モバイルPCであるASUS E203NAに、念願の64bit版 Office 2019(Office 365 SOLO)をインストールしウキウキ・・・なんですが、さっそくピンチが訪れました。


↑SQL-Serverは、MS-Accessの64bitデータベースエンジンモジュールを使う事によって、なんと、Excelのワークシートを、データベースのテーブルとして扱う事も可能になっているんです。

これは長年SQL-Serverの必殺技として君臨している機能なのですが・・・ん? ん? んんん? 様子がおかしいぞ!?

ない!!

SQL-Serverにその重要なデータベースエンジンモジュールが表示されていない!?
< な・・・なぜだ・・・。

本物の64bit版MS-Access 2019そのものをインストールしているのに、「ACE.OLEDB.12.0」がなーーーい!!

■クイック実行形式の Office をインストールすると ODBC / OLEDB が利用できない

↑ネットで調べたら、分かりました!!

クイック実行形式(Office 365 SOLO = Office 2019がこれです)は、Microsoft.ACE.OLEDB.12.0 の OLEDB プロバイダーを使用した接続ができません・・・となっているじゃあないか、なんやて!!

クイック実行形式は以下のような特徴がありました。

[引用開始]

クイック実行形式 Office 製品は、中核的な仮想化とストリーミングの Microsoft Application Virtualization (App-V) テクノロジに基づいており、クイック実行 リソースは、ローカル オペレーティング システム上の分離された仮想環境で実行されます。 そのため、ローカル オペレーティング システムである Windows OS上には、クイック実行形式の Office 製品をインストールした際に、 Office に付属している ODBC ドライバや OLEDB に関するファイルやレジストリ情報が Windows インストーラー形式をインストールした時とは異なる形で登録されます。
[引用ここまで]


↑だから、クイック実行形式を想定してないアプリケーションはどうしようもないよ!という事なんですね。

なんてこった! クイック実行形式がここまで大きな影響をもたらして来るとは・・・。


■回避策はあった!!

しかし、回避策はありました。

Windows インストーラー形式の Office 製品をインストールします!

つまり、今までのように、MS-Accessを持っていないのに、データベースエンジンモジュールだけは利用したいという時と同じ手を使うわけです。

うむむ・・・本物の64bit版MS-Access 2019を持っているのに、ちょっとだけ複雑な気持ちですが吹っ切るしかない。

ちなみに、同じバージョンのデータベースエンジンモジュールはインストール出来ないという制約があるので、どうすればいいか?


■Access 2016のデータベースエンジンモジュールを入手する!!

↑Office 365 SOLOは、Office 2019相当なので、MS-Access 2016のデータベースエンジンをインストールすれば良いです!

https://www.microsoft.com/en-us/download/details.aspx?id=54920から、英語版ではありますが入手出来ます。


↑ダウンロードが終了すると、AccessDatabaseEngine_X64.exeが作成されます。

これを実行するだけです。


↑インストールはさくさく進みます。

もし途中で失敗する時は、どっかに32bitのOffice製品かモジュールが残っているかも知れませんのでご確認下さい。


↑Access 2016のデータベースエンジンモジュールをインストールすると、SQL-Serverからは、Microsoft.ACE.OLEDB.12.0だけでなく、さらにバージョンアップした、Microsoft.ACE.OLEDB.16.0と2つがインストールされていました。

16.0の方を使って、Excel 2019のシートに接続し、テーブルとして読み込んでみますと・・・無事に行けました!!

なんか、Office 365 SOLOって、もちろんアプリケーションを使って色々なものを作り出して行くのが本筋なのではありますが、とにかく環境周りがドラマチックで刺激的で楽しい事のてんこ盛りというのも大きい。

プレイステーションの有料サービスPS+を打ち切ってまでも、サブスクリプションを購入したOffice 365 SOLOですが、もう既に良かった感に溢れています。