XXVI. dbx Functions

简介

The dbx module is a database abstraction layer (db 'X', where 'X' is a supported database). The dbx functions allow you to access all supported databases using a single calling convention. The dbx-functions themselves do not interface directly to the databases, but interface to the modules that are used to support these databases.

注: 本扩展已被移动到 PECL 库中且自以下版本起不再被绑定到 PHP 中:5.1.0.

需求

To be able to use a database with the dbx-module, the module must be either linked or loaded into PHP, and the database module must be supported by the dbx-module. Currently, the following databases are supported, but others will follow:

Documentation for adding additional database support to dbx can be found at http://www.guidance.nl/php/dbx/doc/ .

安装

In order to have these functions available, you must compile PHP with dbx support by using the --enable-dbx option and all options for the databases that will be used, e.g. for MySQL you must also specify --with-mysql=[DIR] . To get other supported databases to work with the dbx-module refer to their specific documentation.

运行时配置

这些函数的行为受 php.ini 的影响。

表格 1. DBX Configuration Options

Name Default Changeable Changelog
dbx.colnames_case "unchanged" PHP_INI_SYSTEM Available since PHP 4.3.0.
有关 PHP_INI_* 常量进一步的细节与定义参见 附录 G

以下是配置选项的简要解释。

dbx.colnames_case string

Columns names can be returned "unchanged" or converted to "uppercase" or "lowercase". This directive can be overridden with a flag to dbx_query() .

资源类型

There are two resource types used in the dbx module. The first one is the link- object for a database connection, the second a result- object which holds the result of a query.

预定义常量

以下常量由本扩展模块定义,因此只有在本扩展模块被编译到 PHP 中,或者在运行时被动态加载后才有效。

DBX_MYSQL ( integer )

DBX_ODBC ( integer )

DBX_PGSQL ( integer )

DBX_MSSQL ( integer )

DBX_FBSQL ( integer )

DBX_OCI8 ( integer ) (available from 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 ) (available from PHP 4.3.0)

DBX_COLNAMES_UPPERCASE ( integer ) (available from PHP 4.3.0)

DBX_COLNAMES_LOWERCASE ( integer ) (available from PHP 4.3.0)

DBX_CMP_NATIVE ( integer )

DBX_CMP_TEXT ( integer )

DBX_CMP_NUMBER ( integer )

DBX_CMP_ASC ( integer )

DBX_CMP_DESC ( integer )

目录
dbx_close  -- Close an open connection/database
dbx_compare  -- Compare two rows for sorting purposes
dbx_connect  -- Open a connection/database
dbx_error  --  Report the error message of the latest function call in the module (not just in the connection)
dbx_escape_string  --  Escape a string so it can safely be used in an sql-statement
dbx_fetch_row  -- Fetches rows from a query-result that had the DBX_RESULT_UNBUFFERED flag set
dbx_query  -- Send a query and fetch all results (if any)
dbx_sort  --  Sort a result from a dbx_query by a custom sort function