MS-AccessのテーブルをMySQL(ODBC接続)にエクスポートする
テーブルを格納したファイル(database.mdb)とフォームを格納したファイル(form.mdb)があるときに、database.mdbのデータをMySQL(ODBC接続)にエクスポートした手順を記述します。
実験環境
Clientマシン
Serverマシン
- O/S:Windows XP Professional
- サーバソフト:XAMPP for Windows 1.6.2 (※2009/01/16現在、最新は1.7.0です)
- MySQL 5.0.41
- phpMyAdmin 2.10.1
Serverマシンの作業
- 空のデータベースを作成する
- MySQL Query BrowserでCreate New Schemaを行う
- MySQL AdministratorでODBC接続に使用するユーザ(例:odbc_client)を作成する
- 管理権限ユーザでログインする(XAMPP初期値では、管理権限ユーザ Username:root Password:(なし)でログインできる)
- User AdministrationでコンテクストメニューからAdd new userを行う
- 作成したユーザに対して権限を付与する
- phpMyAdminで作成したデータベースの(文字コード)照合順序をsjis_japanese_ciに変更する(※)
- 左カラムでデータベース名をクリックする
- 右カラムで操作をクリックする
- 照合順序のプルダウンメニューからsjis_japanese_ciを選択して[実行する]ボタンを押す
Clientの作業
http://dev.mysql.com/downloads/connector/odbc/3.51.html
-
- ダウンロードしたファイルをダブルクリックしてインストールする
- ODBC データソース アドミニストレータでDSNを追加する
- [コントロール パネル]-[管理ツール]-[データソース (ODBC)]の順に開く
- システム DSNタブを選択する
- [追加]ボタンを押す
- MySQL ODBC 3.51 Driverを選択して[完了]ボタンを押す
- Data Source Nameを記入する(DSN選択時の表示名となる)
- Serverを記入する(localhostまたはコンピュータ名)
- UserにODBC接続に使用するユーザを記入する
- Connect OptionsでInitial Statementに「set character set sjis」を入力する
- Connect OptionsでCharacter Setに「sjis」を入力する
- Passwordを設定する
- [Test]ボタンを押して接続テストを行う(Success; connection was made!とダイアログが表示されれば成功)
- Databaseを選択し、[Ok]ボタンを押す
- AccessファイルのテーブルをMySQL(ODBC接続)にエクスポートする
- Accessフォームのデータベース参照先をMySQL(ODBC接続)に変更する
- Accessファイル(form.mdb)を開き、テーブル一覧を表示する
- Accessファイル(database.mdb)のテーブルへのリンクを削除する
- コンテクストメニューからテーブルのリンクを行う
- リンクの選択ダイアログが開いたら、ファイルの種類でODBC データベース ()を選択する
- データ ソースの選択ダイアログが開いたら、[コンピュータ データ ソース]タブを選択する
- 作成したDSNを選択して[OK]ボタンを押す
- テーブルのリンクダイアログが開いたら、リンクするテーブルを選択して[OK]ボタンを押す
- 固有レコード識別子の選択ダイアログが開いたら、Primary Keyのフィールドを選択して[OK]ボタンを押す
※文字コードをShift-JISに合わせる過程で、他にもいろいろ試行錯誤したので、必要な作業が抜けてるかもしれません。
試行錯誤した内容
参照したページ
- MySQLインストール - けんとのブログ
http://blog.goo.ne.jp/kent-12_2008/e/ce6692595c8d38c156d218c767f2e196
http://www.isagiyoi.com/e172.html
- データベース操作におけるエンコード
http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200803/08030009.txt
- START YOUR ENGINES MySQL
http://osada113.blog94.fc2.com/blog-category-6.html
http://d.hatena.ne.jp/THE_MIND/20080517
- MSN相談箱 全角文字が???になる
http://questionbox.jp.msn.com/qa2068942.html?ans_count_asc=1
- artful xampp:Mysqlに関するPHPMyAdminの文字化け
http://www.artful.jp/blog/archives/2006/07/xamppmysqlphpmy.html
- MyODBCのインストールとデータソースの作成 - [データベース]All About
http://allabout.co.jp/internet/database/closeup/CU20060107A/
http://questionbox.jp.msn.com/qa1244588.html
http://www.accessclub.jp/bbs6/0017/das5094.html
- 自己解決しました。
http://www.amy.hi-ho.ne.jp/jbaba/messages/2279.html
http://www.good-how.com/index.php?a=home&p=3
- MySQLのインストール/動作確認手順
http://homepage1.nifty.com/yito/anhttpd/faq/mysql.html
- 2006-04-04 - some comments
http://d.hatena.ne.jp/ke_takahashi/20060404
http://www.arakin.dyndns.org/hp_utf8xampp.php
- 2008-06-09 - urapicoの日記(メモ的に)
http://d.hatena.ne.jp/urapico/20080609
- 偽偽夜食日記: Connecter/ODBCでハマる問題
http://rryu.sakura.ne.jp/nisenise-fuhito/category/connecter-odbc-problem.html