PHP マニュアル
前のページ |  | 次のページ

# XXVII. dbx 関数

# 導入

dbx モジュールは、データベース抽象化レイヤ（db 'X' の 'X' は、 サポートされるデータベースの一つを意味します）のことです。dbx 関数 により、サポートされる全てのデータベースを単一の呼出表記により アクセスすることが可能になります。dbx 関数自体は、データベースへの 直接のインターフェイスを有しませんが、それらのデータベースをサポート するために使用されるモジュールへのインターフェイスを有します。

> 注意: この拡張モジュールは PECL レポジトリに移動 されており、以下のバージョン以降 PHP にバンドルされなくなっています。 PHP 5.1.0.

# 要件

dbx モジュールでデータベースを使用可能とするには、そのモジュールが PHP にリンクされるかロードされる必要があり、そのデータベースを dbx モジュールがサポートされている必要があります。現在 以下のデータベースがサポートされていますが、他のデータベースも 追加される予定です。

- FrontBase (PHP 4.1.0 以降で利用可能)

- Microsoft SQL Server

- MySQL

- ODBC

- PostgreSQL

- Sybase-CT (PHP 4.2.0 以降で利用可能)

- Oracle (oci8) (PHP 4.3.0 以降で利用可能)

- SQLite (PHP 5)

dbx にデータベースのサポートを追加するためのドキュメントは、 http://www.guidance.nl/php/dbx/doc/ にあります。

# インストール手順

これらの関数を利用可能にするには、 --enable-dbx オプションを使用して dbx サポートを有効にし、また、使用するデータベースに関するオプション、 例えば MySQL の場合は --with-mysql=[DIR] も指定して PHP をコンパイルする必要があります。 他のサポートされるデータベースを dbx モジュールで動作させるには、 個別のドキュメントを参照してください。

# 実行時設定

`php.ini` の設定により動作が変化します。

表 1. DBX 設定オプション

名前 | デフォルト | 変更の可否 | 変更履歴
--- | --- | --- | ---
dbx.colnames_case | "unchanged" | PHP_INI_SYSTEM | PHP 4.3.0 以降で有効です。

PHP_INI_* 定数の詳細および定義については 付録G を参照してください。

以下に設定ディレクティブに関する 簡単な説明を示します。

dbx.colnames_case string

  カラム名は、変更されず("unchanged"の場合)に返すか、大文字 ("uppercase"の場合)または小文字("lowercase"の場合)に変換すること ができます。このディレクティブは、dbx_query() のフラグで上書きすることが可能です。

# リソース型

dbx モジュールでは2種類のリソース型があります。最初のリソースは、 データベース接続用のリンク object で、2 番目はクエリ結果を 結果 object です。

# 定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

`DBX_MYSQL` (integer)

`DBX_ODBC` (integer)

`DBX_PGSQL` (integer)

`DBX_MSSQL` (integer)

`DBX_FBSQL` (integer)

`DBX_OCI8` (integer) (PHP 4.3.0 以降で有効)

`DBX_SYBASECT` (integer)

`DBX_SQLITE` (integer) (PHP 5)

`DBX_PERSISTENT` (integer)

`DBX_RESULT_INFO` (integer)

`DBX_RESULT_INDEX` (integer)

`DBX_RESULT_ASSOC` (integer)

`DBX_RESULT_UNBUFFERED` (integer) (PHP 5)

`DBX_COLNAMES_UNCHANGED` (integer) (PHP 4.3.0 以降で有効)

`DBX_COLNAMES_UPPERCASE` (integer) (PHP 4.3.0 以降で有効)

`DBX_COLNAMES_LOWERCASE` (integer) (PHP 4.3.0 以降で有効)

`DBX_CMP_NATIVE` (integer)

`DBX_CMP_TEXT` (integer)

`DBX_CMP_NUMBER` (integer)

`DBX_CMP_ASC` (integer)

`DBX_CMP_DESC` (integer)

前のページ | ホーム | 次のページ
dbmreplace | 上に戻る | dbx_close