通常のODBCサポートに加えて、PHPのUnified ODBC関数では、各々のAPIを 実装するためにODBC APIのセマンティックスを借用する複数のデータベー スにアクセスすることが可能です。ほとんど同じ複数のデータベースドラ イバを維持管理する代わりに、これらのドライバは単一のODBC関数セットに 統合されています。
以下のデータベースがUnified ODBCでサポートされています。 Adabas D, IBM DB2, iODBC, Solid, Sybase SQL Anywhere
注意 上記のデータベースと接続する際にODBCは使用されません。関数はODBC 関数として同じ名前と構文を共有していますが、これらのデータベース の専用APIを使用します。この例外は、iODBCです。PHPをiODBCサポート を付けて構築した場合、全てのODBC互換のドライバをPHPアプリケーショ ンドライバが使用可能となります。iODBC は、OpenLink Softwareにより管理されてい ます。iODBC に関する詳細およびHOWTOを http://www.iodbc.org/で参照可能です。
詳細な情報とこれらのデータベースに関してPHPの設定については、 データベースインストー ルオプションの章を参照して下さい。
Windows版のPHPにはこの拡張モジュールのサポートが組み込まれています。これらの関数を使用するために拡張モジュールを追加でロードする必要はありません。
これらの関数の動作は、php.iniの設定により変化します。
表 1Unified ODBC設定オプション
名前 | デフォルト | 変更の可否 |
---|---|---|
odbc.default_db * | NULL | PHP_INI_ALL |
odbc.default_user * | NULL | PHP_INI_ALL |
odbc.default_pw * | NULL | PHP_INI_ALL |
odbc.allow_persistent | "1" | PHP_INI_SYSTEM |
odbc.check_persistent | "1" | PHP_INI_SYSTEM |
odbc.max_persistent | "-1" | PHP_INI_SYSTEM |
odbc.max_links | "-1" | PHP_INI_SYSTEM |
odbc.defaultlrl | "4096" | PHP_INI_ALL |
odbc.defaultbinmode | "1" | PHP_INI_ALL |
注意 *マークがついているエントリは未実装です。
以下に設定ディレクティブに関する簡単な説明を示します。
odbc_connect()または odbc_pconnect()でODBCデータソーソが指定されな い場合に使用されるODBCデータソース。
odbc_connect()または odbc_pconnect()で名前が指定されない場合 に使用される名前。
odbc_connect()または odbc_pconnect()でパスワードが指定されない場合 に使用されるパスワード。
持続的ODBC接続を許可するかどうか。
再利用する前に接続が有効であることを確認します。
プロセス毎の持続的ODBC接続の最大数。
プロセス毎の持続的接続を含むODBC接続の最大数。
LONGフィールドの処理。変数に返されるバイト数を指定します。
バイナリデータの処理モード。
これらの定数は、この拡張モジュールで定義されており、 この拡張モジュールがPHP内部にコンパイルされているか実行時に動的にロー ドされるかのどちらかの場合のみ使用可能です。