Microsoft Accessデータベースからデータをインポートする方法を紹介します。
まず、必要なODBCドライバーがあることを確認します。
もし、ODBCドライバーがない場合はMicrosoft社のウェブサイトからダウンロードが可能です。
なお、ODBCドライバーをダウンロードするときは、64bit版を選択してください。
ODBCデータソースアドミニストレーターから、Microsoft Access Driverを追加し、ODBC Microsoft Access Setupのダイアログから、接続したい Microsoft Access Database ファイルを選択します。
Exploratoryを開いて、データフレームの右隣にある+(プラス)ボタンをクリックして、「データベースデータ」を選択します。
データベース・データソースから「Microsoft Access」を選択します。
先程作成したDSNを選択して、「コネクションをテスト」ボタンをクリックして、接続に成功するか確認して、接続に成功したら、「追加」ボタンをクリックします。
テーブルを選択し、SQLを書いてから「実行」ボタンをボタンをクリックすると、結果のプレビューを確認できます。結果を確認したら、「保存」ボタンクリックして、データをインポートできます。
Macの手順も、Windowsとほぼ同じです。異なる点はODBCドライバーのインストールです。
まず、unixODBCのインストールします。詳しいやり方はこちらのノートで紹介してますので、ご参考ください。
Microsoft社はMac用のODBCドライバーを提供していませんので、CDataのようなサードパーティのODBCベンダーODBCドライバーから入手する必要があります。
ODBC Managerを使って、MS AccessのDSNの設定が可能です。
Add(追加ボタン)をクリックし、インストールしたODBCドライバを選択します。
必要な項目を入力します。
ODBCドライバーのセットアップが完了したら、Exploratoryを開いて、データフレームの右隣にある+(プラス)ボタンをクリックして、「データベースデータ」を選択します。
データベース・データソースからMicrosoft Accessを選択します。
作成したDSNを選択して、「コネクションをテスト」ボタンをクリックして、接続に成功するか確認して、接続に成功したら、「追加」ボタンをクリックします。
テーブルを選択し、SQLを書いてから「実行」ボタンをボタンをクリックすると、結果のプレビューを確認できます。結果を確認したら、「保存」ボタンクリックして、データをインポートできます。
Windows上で、Microsoft Accessデータソースダイアログの左のスキーマツリー内に表示される表名や列名の中のマルチバイト文字が文字化けします。また、クエリーを実行すると、文字化けの影響で表が見つからないため、"The Microsoft Access database engine cannot find the input table or query" といったエラーが表示される。
WindowsでUTF-8の使用を有効化することによって、この問題は解決します。具体的な手順はこちらのノートを参照してください。