使用PHP操作DB2 Express C的五种方法(1)_PHP教程

php中文网
发布: 2016-07-15 13:24:12
原创
1165人浏览过

最近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语句建立一个表,在本文中将会经常使用这个表。

@@######@@

一、ODBC方式

立即学习PHP免费学习笔记(深入)”;

DB2 Express C和其他的数据库(SQL Server、Oracle)一样,也提供了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。

@@##@@498)this.width=498;' onmousewheel = 'javascript:return big(this)' src="/files/uploadimg/20070308/1219580.jpg">
图1

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

@@######@@

下面是连接mydb2的语句。

@@######@@

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

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

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

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

法语写作助手
法语写作助手

法语助手旗下的AI智能写作平台,支持语法、拼写自动纠错,一键改写、润色你的法语作文。

法语写作助手 31
查看详情 法语写作助手

@@######@@

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

@@######@@

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

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

@@######@@

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

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

1

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446810.htmlTechArticle最近IBM推出了一个令人十分震惊的数据产品DB2 Express C。这个产品的性能和其他的DB2版本差不多,而更吸引眼球的是它竟然是完全免费的。这...
<p>create table mytablea<br>...{<br>id int primary key,<br>name varchar(20) not null,<br>age int not null,<br>phone varchar(30) not null,<br>salary int<br>}</p>
登录后复制
<p>odbc_connect ( "数据源名", "用户名", "密码","游标类型"[可选]) </p>
登录后复制
<p>$conn = odbc_connect("mydb2", "db2admin", "mypassword",SQL_CUR_USE_ODBC );</p>
登录后复制
<p>odbc_do($conn, "delete * from mytable where id > 1000");<br>odbc_do($conn, "insert into mytable values(2000, 'mike', 30, '12345678', 3000)"); </p>
登录后复制
<p>$result = odbc_exec($conn, "select * from mytable where id = 2000");</p>
登录后复制
<p>var $fetch=array();<br>fetch=odbc_fetch_array($result, 2); // 将第2行的每个字段的值保存在数组fetch中 <br>$field1 = odbc_result($Query_ID, 1);<br>$field2 = odbc_result($Query_ID, "salary");<br>print $field1 . "," . $field2;</p>
登录后复制
">
相关标签:
php
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号