随着网站规模的扩大,mysql显然不能满足需求,在许多网站都
采用大型数据库oracle的情况下,如何使用php来访问oracle变的越发重要了。
我从我编写的一个简单ierp系统谈我自己是如何做的,在php官方手册里也有说明。
一般情况下或者说大多数人都是用oracle8 call-interface(oci8)来连接数据库,
我这里介绍不使用oci8接口而直接使用php的oracle函数来连接数据库并处理数据。
注意:
php.ini配置中要去掉 ;extension=php_oracle.dll 前的分号即
extension=php_oracle.dll
1,连接数据库
使用ora_logon()或者ora_plogon()来连接上数据库
ora_plogon功能与ora_logon类似,只不过ora_plogon开启与 oracle 的长期连结
直至web服务停止
$handle = ora_plogon("system@localhost", "manager") or die;
"system@localhost" 其中localhost是oracle sid 名称,system是用户名称,manager是用户密码
2,打开游标
$cursor = ora_open($handle);
3,分析语法并执行指令
$query = "select count(*) from area where areacode = '$addcode'";
ora_parse($cursor, $query) or die;
ora_exec($cursor);
4,获取数据
if(ora_fetch($cursor))
$datacount = ora_getcolumn($cursor, 0);
5,关闭游标
ora_close($cursor);
当然了你有可能执行的是delete或者insert语句不存在获取数据的步骤如:
insert:(插入)
$handle = ora_plogon("system@localhost", "manager") or die;
ora_commiton($handle);
$cursor = ora_open($handle);
$query = "insert into area(areacode,areaname) values('$addcode','$addname')";
ora_parse($cursor, $query) or die;
ora_exec($cursor);
ora_close($cursor);
delete:(删除)
$handle = ora_plogon("system@localhost", "manager") or die;
$cursor = ora_open($handle);
ora_commiton($handle);
$query = "delete from area where areacode in ('222','444')" ;
ora_parse($cursor, $query) or die;
ora_exec($cursor);
ora_close($cursor);
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器