MS Access 秀丸

AccessからMySQLを操作

投稿日:2009年5月21日 更新日:

WordPressに書いた記事は、MySQLに格納されている。

格納された大量の記事をまとめて修正したいときは、いちいち管理画面から修正するのは疲れる。
今までは、PhpMyAdminでSQLのUPDATEを使うか、またはいったんテキストファイルでローカル環境にダウンロードしてから秀丸で置き換え機能でやってきた。

でも、フィールド数が多かったり、一つのフィールドに格納されている文字量が多かったりすると、どちらのやり方をとっても、テキストボックスをクリックしてスクロールしないと見えなかったり、あるいはウィンドウの右端で折り返されたりして、なかなか効率が悪い。

こんなとき、ローカルに強いAccessを使えたら便利なのに。
フォームが簡単に作れるから、修正対象となるフィールドだけを表示できるし、文字量の多いフィールドは、テキストボックスの書式を変更してフォントサイズを小さくすればよい。

で、今日はXAIOのMYSQL+ACCESS+ODBCドライバと、XAMPPのMySQL+ACCESS+ODBCドライバで、それぞれやってみた。

結論から言うと、最初は、文字化けしたり、レコードの読み込みはできても更新できなかったり、ODBC接続テストでエラーが出たりして、なかなかうまくいかなかったけど、最後にはできた。

  • xaio(MySQL 4.0.20)+ Access2007 + MysqlODBC(v3.51) —NG
  • xaio(MySQL 4.0.20)+ Access2007 + MysqlODBC(v5.1) —NG
  • xampp(v1.4,MYSQL(v4.0.18)) + Access2007 + MysqlODBC(v3.51) —NG
  • xampp(v1.4,MYSQL(v4.0.18)) + Access2007 + MysqlODBC(v5.1) —NG
  • xampplite(v1.7.1,MYSQL(v5.1.33)) + Access2007 + MysqlODBC(v5.1) —OK

一番最後の組み合わせで、やっと文字化けもエラーも出なくなった。ACCESS2003でもテストしてみたけどそれもうまくいった。
xamppではなくてxamppliteを使ったのは別に意味なし。パッケージをダウンロードするのに時間がかかるようだったからサイズが小さいのにしただけ。

学んだこと:
・それぞれのソフトは、面倒くさがらずに新しいバージョンをダウンロードしてきてから使うこと。特にxaioなんてのは2006年版だった・・・。
・うまくいかない理由はACCESSではなくて、MySQLとそのODBCドライバにあった。
・テストするときは、事前にxaio_start.exeでサーバを作っておかなくてはいけない。
・MySQLのODBCは5.1になってから文字コードを自動変換してくれるようになったらしい。


今日もまた、こんなことに仕事場で半日使ってしまった。
けど、最後にはうまくいってほんと良かった。何度も言うけど。

あとは、この「知恵」を使った仕事が今後来るかどうかだなあ・・・それが問題だったり。

-MS Access, 秀丸

執筆者:

関連記事

no image

客先で動かしているAccessとFAXの連携システムが昨日から止まっている

これまでのWindowsXP+OutlookExpressであれば問題なかった。 しかし、OSはWindows7になってしまい、メールはWindowsLiveメールになってしまった。 そしてWindo …

no image

Access2013のWeb機能について(FileMakerと比較して)メモ

ここ数日、MS-Access 2013のWeb機能を勉強していたので、そのメモ。 ■フォームの書式 選択肢があまりに少ない。FMのようにデザインやテーマが用意されていない。 リスト表示のサイズが変更で …

no image

VBAで忘れてしまっていたことと、知らなかったこと

STOPステートメント: ブレークポイントを設定しないでもその行でコード処理を止めることができるので、Access終了->Access起動といったシチュエーションで使える。 Randomizeステート …

no image

Artisteer4で作成したHTMLページを印刷するとCSSが画面でみたものと違う

「印刷するとずれる。画面と同じように印刷したい」と、お客さんが言う。 Artisteerでは style.css” media=”screen” となっているので、 …

no image

Accessで、見積書のような「サブフォームつきフォームを丸々コピー」する方法・・・見つけるのに、四苦八苦。

最初、複雑でかつ読み取り専用のクエリを元にしたフォームをコピーしようとしていたために、 acCmdPasteAppendのラインで「コマンドまたはアクション”追加貼り付け”は無効です」のエラーが出て、 …