随着网站规模的扩大,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);

不使用OCI8接口如何连接PHP和Oracle的更多相关文章

  1. PL/SQL连接64位Oracle配置方法

    问题原因: plsql developer无法连接64位oracle server的原因是,plsql是32位的,没有64位的版本,而oracle是64位,两者不兼容. 配置方法: 1.下载64位Or ...

  2. plsql无法连接64位oracle数据库的解决方法(图文解说)

    oracle11g下载页面:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html,找到适 ...

  3. Jsp 连接 mySQL、Oracle 数据库备忘(Windows平台)

    Jsp 环境目前最流行的是 Tomcat5.0.Tomcat5.0 自己包含一个 Web 服务器,如果是测试,就没必要把 Tomcat 与 IIS 或 Apache 集成起来.在 Tomcat 自带的 ...

  4. Java java jdbc thin远程连接并操作Oracle数据库

    JAVA jdbc thin远程连接并操作Oracle数据库 by:授客 QQ:1033553122 测试环境 数据库:linux 下Oracle_11g_R2 编码工具:Eclipse 编码平台:W ...

  5. firedac连接WINDOWS的ORACLE

    firedac连接WINDOWS的ORACLE 首先安装OCI FOR WINDOWS.OCI分WIN32和WIN64,且OCI的版本要和ORACLE的版本相一致才行. FIREDAC指定OCI驱动程 ...

  6. firedac连接linux的oracle

    firedac连接linux的oracle 首先要下载并安装 oci for linux.OCI的版本要和ORACLE数据库的版本一致. centos7环境下安装OCI:https://blog.cs ...

  7. jdbc连接rac的oracle数据库

    jdbc连接rac的oracle数据库需要配置所有racIP,如下: DB1 =(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(H ...

  8. plsql无法连接64位oracle数据库的解决方法

    今儿个重装了个系统,win8 64位.接着装了个64位的oracle11g,oracle11g下载页面:http://www.oracle.com/technetwork/database/enter ...

  9. PCB .NET连接MySQL与Oracle DLL文分享件 MySql.Data,Oracle.ManagedDataAccess

    虽然我们C#对SQL SERVER天然的支持,但对于C#要连接MYSQL或Oracle就不同了, 需要用到第3方组件才行,本文将2个组件连接数据库代码与DLL下载地址贴出. 一.C#连接MYSQL   ...

随机推荐

  1. SQL Prompt Snippet Manager 妙用

    SQL Prompt有一个很好用的工具叫Snippet Manager,SQL脚本片段管理器. 使用它可以快速的键入一段脚本,如输入ii+Tab,即可变成INSERT INTO 同理,我们可以定义一些 ...

  2. LINQ 多条件写法

    源代码: string depAll = (ddl_dep1.SelectedValue == "") ? "" : ddl_dep1.SelectedValu ...

  3. 解决weblogic与系统时间相差8小时的问题

    解决weblogic与系统时间相差8小时的问题 在一般情况下weblogic与系统时间是很少会出现时间差的问题,但有可能在某一特定的情况下就会出现,如使用weblogic8版本时可能会出现时差问题: ...

  4. Delphi OO

    深入Delphi编程(OOP) 日期:2007年11月9日 作者:左轻侯 人气: 2595 查看:[大字体 中字体 小字体] 刚刚接触的Delphi的朋友,可能最感兴趣的就是它丰富.强大的VCL(可视 ...

  5. OC基础-day02

    #pragma mark - Day02_01_对象的创建与使用 1)如何通过类创建一个对象 1. 类是抽象的,无法直接使用 2. 对象是类的一个具体实现,可以直接使用 3. 语法 类名 *对象名 = ...

  6. 3D Game Programming with directx 11 习题答案 8.3

    第八章 第三题 1.将flare.dds和flarealpha.dds拷贝到工程目录 2.创建shader resource view HR(D3DX11CreateShaderResourceVie ...

  7. iterator迭代器的使用

    部分摘自C++ Primer: 所有的标准库容器类都定义了相应的iterator类型,如vector:vector<int>::iterator iter; 这条语句定义了一个名为iter ...

  8. winform下mapxtreme2008 v7.0 生成release版提示找不到dll问题

    在winform下基于mapxtreme2008 v7.0 生成了一个地图软件,用debug方式运行无误,但改为release版时提示缺少一大堆dll,如: 无法从C:\Program Files ( ...

  9. php多线程即时通讯

    即时通讯:推送消息http://www.workerman.net/

  10. centos乱码问题解决

    1.yum groupinstall chinese-support 安装中文语言包 2.vi /etc/sysconfig/i18n 修改文件为: LANG="zh_CN.UTF-8&qu ...