频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

使用PHP操作DB2 Express C的五种方法

来源:IT168 作者:极地圣火 出处:巧巧读书 2007-03-09 进入讨论组
下一页 1 2 3 
谢 谢 收 藏 http://www.qqread.com/php/2007/03/u300692.html

最近IBM推出了一个令人十分震惊的数据产品DB2 Express C。这个产品的性能和其他的DB2版本差不多,而更吸引眼球的是它竟然是完全免费的。这对于以MySQL为首的开源数据库是一个不小的冲击,恐怕以后LAMP(Linux+Apache+MySQL+PHP)要变成LADP(Linux+Apache+DB2+PHP)了。为了提前应对这个变化,让我们先来看一看PHP操作DB2 Express C的各种方法。

PHP在它发展的13年的时间演化出了非常多的数据库接口。本文就以Windows+PHP5.2为例来讨论在PHP中常用的五种操作DB2 Express C的方式。

在讨论之前,让我们先使用下面的DB2 SQL语句建立一个表,在本文中将会经常使用这个表。

create table mytablea

...{

id int primary key,

name varchar(20) not null,

age int not null,

phone varchar(30) not null,

salary int

}

一、ODBC方式

DB2 Express C和其他的数据库(SQL ServerOracle)一样,也提供了ODBC驱动。但DB2的ODBC驱动并未随安装程序打包,在使用时需要从IBM的网站下载。网址如下:http://www.ibm.com/developerworks/cn/db2/v9/index_download.html

PHP从3.0.6开始引入了访问ODBC API的函数。所有的访问ODBC API的函数都以odbc_开头。在使用这些函数之前,必须在本机上建立一个用户或系统的DB2 ODBC数据源。如图1所示。本文所建立的数据源名是mydb2。

使用PHP操作DB2 Express C的五种方法(图一)
图1

首先使用odbc_connect函数连接mydb2数据源。odbc_connect函数的定义如下:

odbc_connect ( "数据源名", "用户名", "密码","游标类型"[可选])

下面是连接mydb2的语句。

$conn = odbc_connect("mydb2", "db2admin", "mypassword",SQL_CUR_USE_ODBC );

其中db2admin是DB2 Express C在安装时默认的用户名。

PHP还为我们提供了另外一个带缓冲的连接数据库的方法。odbc_pconnect。这个方法和odbc_connect的差不多,只是在当前php文件执行完后,这个连接并不释放。如果下一次仍然使用mydb2数据源的话,将继续使用这个连接。这样可以提高Web程序的执行效率。

一般对数据库的操作无外乎两种,一是执行如delete、update和insert等不返回结果的SQL,另外一种是执行返回结果的SQL语句,如select。

第一种情况可以使用odbc_do来执行。

odbc_do($conn, "delete * from mytable where id > 1000");

odbc_do($conn, "insert into mytable values(2000, 'mike', 30, '12345678', 3000)");

第二种情况可以使用odbc_exec来执行。

$result = odbc_exec($conn, "select * from mytable where id = 2000");

如果odbc_exec执行成功,则返回查询的结果。

输出$result的方法很多,在这里我只给出将结果转换成数组的方法,其他的方法请参阅PHP手册。

var $fetch=array();

fetch=odbc_fetch_array($result, 2); // 将第2行的每个字段的值保存在数组fetch中

$field1 = odbc_result($Query_ID, 1);

$field2 = odbc_result($Query_ID, "salary");

print $field1 . "," . $field2;

其中odbc_result既可以根据字段的索引,又可以根据字段的名得到字段值。

最后使用odbc_close关闭数据库连接

更多文章 更多内容请看DB2PHP开发应用手册DB2中的数据处理专题,或进入讨论组讨论。
更多专题 【深 度 阅 读】 相 关 文 章
    下一页 1 2 3 
    收藏此文】【 】【打印】【关闭
    相关图文阅读
    频道图文推荐
    健 康 咨 询
    时 尚 咨 询
    巧巧读书宗旨
    相关专题
    讨论组问题推荐
    站内各频道最新更新文档
    站内最新制作专题
    热门关键字导读
    Photoshop教 程照片处理 照片制作 PS快捷键 抠图
    计 算 机 故 障XP系统修复
    艺 术 与 设 计设计 流媒体 设计欣赏 边框
    计 算 机 安 全ARP
    站内频道文章精选
    巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章