Pear DB 新手入门指南教程

  作者:bea

1. 简介这是一部指导我们如何使用Pear DB扩展。Pear DB,提供这样一系列的类: n 数据库抽象 n 高级错误处理机制 n 以及其它 2. 下载、安装Pear 由于现在Pear项目仍处于紧锣密鼓的开发之中,所以得到它的最好办法就是从CVS获得(Pear DB发行包已经跟随PHP4.0.6以后版本捆绑发布)。所以,我们只需要把Pear的根目录放到php.ini配置文件include_path中。也可以通过这样设置:_set('include_path', '/pea

1. 简介这是一部指导我们如何使用Pear DB扩展。Pear DB,提供这样一系列的类:
n 数据库抽象
n 高级错误处理机制
n 以及其它


2. 下载、安装Pear
由于现在Pear项目仍处于紧锣密鼓的开发之中,所以得到它的最好办法就是从CVS获得(Pear DB发行包已经跟随PHP4.0.6以后版本捆绑发布)。所以,我们只需要把Pear的根目录放到php.ini配置文件include_path中。也可以通过这样设置:
_set('include_path', '/pear_base_dir').

以下是strp by step示例:



存放Pear的目录:# cd /usr/local/lib用“phpfi“口令登录:# cvs -d :pserver:cvsread@cvs.php.net:/repository login用以下命令得到所有的pear文件,同时也可以用来更新已经下载的文件。其他的参数有:"today", "last month",等。我推荐用"last week"参数,因为一般bugs的提交和修改都是每周一次。 # cvs -d :pserver:cvsread@cvs.php.net:/repository export -D "last week" php4/pear编辑php.ini文件加上下面一段在include_path处: /usr/local/lib/php4/pear 如果没有修改的权限,可以通过这条语句在代码中实现: ini_set('include_path', 'path_to_pear');



获得PHP CVS的完全文档
注意Pear DB必需PHP版本4.0.4以上,而在Pear中的一些其他包如:XML Parser of the pear installer script需要PHP4.0.5以上版本。
 
3.        使用Pear DB
3.1         连接,断开数据库



 <?php // The pear base directory must be in your include_path require_once 'DB.php'; $user = 'foo'; $pass = 'bar'; $host = 'localhost'; $db_name = 'clients_db'; // Data Source Name: This is the universal connection string $dsn = "mysql://$user:$pass@$host/$db_name"; // DB::connect will return a Pear DB object on success // or a Pear DB Error object on error // You can also set to TRUE the second param // if you want a persistent connection: // $db = DB::connect($dsn, true); $db = DB::connect($dsn); // With DB::isError you can differentiate between an error or // a valid connection. if (DB::isError($db)) {         die ($db->getMessage()); } .... // You can disconnect from the database with: $db->disconnect(); ?> 



数据源(上例中的$dsn 参数)有以下允许的格式:(从Pear/DB.php的parseDSN方法复制而来)



      *  phptype: Database backend used in PHP (mysql, odbc etc.)      *  dbsyntax: Database used with regards to SQL syntax etc.      *  protocol: Communication protocol to use (tcp, unix etc.)      *  hostspec: Host specification (hostname[:port])      *  database: Database to use on the DBMS server      *  username: User name for login      *  password: Password for login      *      * The format of the supplied DSN is in its fullest form:      *      *  phptype(dbsyntax)://username:password@protocol+hostspec/database      *      * Most variations are allowed:      *      *  phptype://username:password@protocol+hostspec:110//usr/db_file.db      *  phptype://username:password@hostspec/database_name      *  phptype://username:password@hostspec      *  phptype://username@hostspec      *  phptype://hostspec/database      *  phptype://hostspec      *  phptype(dbsyntax)      *  phptype



现在支持的数据库有 (在 phptype DSN 部分):



 mysql  -> MySQL pgsql  -> PostgreSQL ibase  -> InterBase msql   -> Mini SQL mssql  -> Microsoft SQL Server oci8   -> Oracle 7/8/8i odbc   -> ODBC (Open Database Connectivity) sybase -> SyBase ifx    -> Informix fbsql  -> FrontBase



注意并不是所有数据库特征都支持,可以从
根目录>/DB/STATUS 得到详细的清单。
3.2         执行数据库



 <?php // Once you have a valid DB object ... $sql = "select * from clients"; // If the query is a "SELECT", $db->query will return // a DB Result object on success. // Else it simply will return a DB_OK // On failure it will return a DB Error object. $result = $db->query($sql); // Always check that $result is not an error if (DB::isError($result)) {         die ($result->getMessage()); } .... ?> 



 
3.3         获得select的数据

1
2
3
下一页
阅读全文



有用  |  无用

猜你喜欢