おまけ

メモ書き

MySQL 関連

Delphi で MySQL 直結

MySQL Client API ライブラリは当然の事ながら C 言語で書かれているわけだが、PHP や PERL、Ruby などからは低レベル接続が出来るのに我らが Delphi からは出来ないのは癪に障る。
などと思った先人が居たようで、MySQL Client API ライブラリのヘッダを Delphi Pascal に変換したユニットが http://www.fichtner.net/delphi/mysql.delphi.phtml で公開されている、実に有り難い。
ただし、Delphi では dbExpress 経由での接続に対応しており、データベースに依存しないコードを書くためにはむしろ mysql.pas を利用せずに dbExpress を利用すべきだろう。
もちろん Personal 版に dbExpress は添付されないので mysql.pas を利用させてもらうほかない。

ujis (EUC) で動作している MySQL に Windows からアクセスする

文字コードを ujis で運用している MySQL に対して、Windows のコマンドライン版クライアントで接続すると日本語文字が文字化けしまくる。
文字コード変換をまるでかけていないせいだ。
これを回避するパッチを施した MySQL クライアントが SoftAgency から提供されているので、以下のアドレスから貰ってくる。
http://www.softagency.co.jp/mysql/pro/win_winclients.html
「Windows 環境でデバッグして、本番環境は Linux でやる、故に文字コードは ujis だ」とか、「一般ユーザにはサーバに telnet させずに MySQL だけ使わせたい」等という場合には必要になろう。

PHP 関連

Oracle バージョンとの依存性

コンパイル済みで配布される Windows 版のみに言えることだが、Oracle8 の OCI (Oracle Call Interface) に対応しているのは 4.0.5 までで、4.0.6 以降は Oracle8i を前提にコンパイルされている。
Oracle8 を運用しているプロジェクトで PHP を利用する場合には注意されたし。
4.0.5 は 2002/11/17 現在は http://www.php.net/ からダウンロードできるが、ソースコード版しかない可能性が高い。
Windows バイナリが欲しい場合、最後の手段は php-4.0.5-Win32.zip というファイル名を検索エンジンで探すのだ。
ちなみに、Oracle Client との関係なので、Oracle サーバ本体に直接 PHP をインストールするのでない限りは Oracle Client をバージョンアップしてしまって、バージョン間の差違の吸収を Oracle 側にさせてしまうのも選択肢だ。

マルチバイト文字解釈のバグ

2002/11/17 現在で最新の 4.2.3 でマルチバイト文字の文字コード解釈に致命的なバグがあることが判明。
4.2.2 では現象が確認されないので、4.2.2 と 4.2.3 の間で行われたバグフィックスに重要な影響を受けない限りは 4.2.2 に留め置くのも手段。
日本 PHP ユーザー会の方でパッチが当てられたバージョンを配布してくれているので、そちらを選択するのも積極的な選択肢と言えよう。

ちなみに俺は 4.2.2 にダウングレードした。

2003/05/10 現在では 4.3.1 が出ているので、こちらを利用するべきかと思われる。
ただし、4.3.0 で大変革があったので、それが嫌なら 4.2.2 に戻るほか無い。

Valid HTML 4.01 Strict Valid CSS!