如何在PHP中使用Oracle数据库(1)


Posted in PHP onOctober 09, 2006

在php3.0以上版本中,php内置了几乎目前所有的数据库处理函数,包括Oracle;在本文中我们通过一个实例来介绍了如何使用这些函数来操作Oracle数据库。  

PHP提供了2大类API(应用程序接口)来操作Oracle数据库。一个是标准的Oracle处理函数(ORA) 另一个是Oracle 8调用接口函数(OCI8). 后者只能在Oracle 7或8版本上使用。 由于OCI8 提供了很多优化选项,因此只要有可能就应该采用 OCI8 接口。这里我们分别用这二种函数集进行了演示。  

首先本文的前提假设你已经装好了 Oracle数据库环境 和 PHP 开发环境.  如果不懂也没多大关系,网上有很多相关的好文章可以参考。

第一步:创建 一个实验用的数据库

这个问题你可以请你的数据库管理员或参考Oracle用户手册处理,这里不再多讲  

用 ORA 建立数据表

即使你已经创建好了数据表,也请看看本段文字。它可以告诉你如何用PHP+SQL的技术操作Oracle

在本例中我们创建了一个用于存放个人email的数据表

相关PHP代码:

PutEnv("ORACLE_SID=ORASID");

$connection = Ora_Logon ("username", "password");
if ($connection == false){
  echo Ora_ErrorCode($connection).": ".Ora_Error($connection)."
";
  exit;
}    

$cursor = Ora_Open ($connection);
if ($cursor == false){
  echo Ora_ErrorCode($connection).": ".Ora_Error($connection)."
";
  exit;
}    

$query = "create table email_info " .
       "(fullname varchar(255), email_address varchar(255))";

$result = Ora_Parse ($cursor, $query);
if ($result == false){
  echo Ora_ErrorCode($cursor).": ".Ora_Error($cursor)."
";
  exit;  
}

$result = Ora_Exec ($cursor);
if ($result == false){
  echo Ora_ErrorCode($cursor).": ".Ora_Error($cursor)."
";
  exit;  
}

Ora_Commit ($connection);
Ora_Close ($cursor);
Ora_Logoff ($connection);

?>  

为了处理Oracle数据库,我们首先要和Oracle建立一个联结。
语法是 Ora_Logon (user, password),返回一个connectID..   
提醒: 在此之前我们还必须设置环境变量: ORACLE_SID的值.  

现在,我们可以通过该联结的 ID对Oracle进行交互式操作了。数据表名字就叫email_info吧。该表由2个域组成,一个存储个人全名,(如:晓月)一个存储email地址如(xiaoyue@163.net)  

还需要一个游标 Ora_Open.  该游标常常用来枚举数据。我们用 Ora_Parse 或 Ora_Exec 查询Oracle的结果集.  Ora_Parse 效验SQL语法正确性 而 Ora_Exec 则执行相应的SQL语句.  如果这一切都正常运行,那么我们就运行 Ora_Commit来确认. 

PHP 相关文章推荐
php 删除记录实现代码
Mar 12 PHP
来自phpguru得Php Cache类源码
Apr 15 PHP
php采集时被封ip的解决方法
Aug 29 PHP
PHP 过滤页面中的BOM(实现代码)
Jun 29 PHP
PHP遍历数组的三种方法及效率对比分析
Feb 12 PHP
PHP curl伪造IP地址和header信息代码实例
Apr 27 PHP
PHP模板引擎Smarty内置变量调解器用法详解
Apr 11 PHP
PHP使用pear实现mail发送功能 windows环境下配置pear
Apr 15 PHP
php实现连接access数据库并转txt写入的方法
Feb 08 PHP
Yii2下点击验证码的切换实例代码
Mar 14 PHP
php生成二维码不保存服务器还有下载功能的实现代码
Aug 09 PHP
PHP常用工具函数小结【移除XSS攻击、UTF8与GBK编码转换等】
Apr 27 PHP
BBS(php & mysql)完整版(八)
Oct 09 #PHP
超级简单的发送邮件程序
Oct 09 #PHP
发挥语言的威力--融合PHP与ASP
Oct 09 #PHP
如何在PHP中使用Oracle数据库(2)
Oct 09 #PHP
用PHP连接Oracle for NT 远程数据库
Oct 09 #PHP
BBS(php & mysql)完整版(六)
Oct 09 #PHP
用PHP4访问Oracle815
Oct 09 #PHP
You might like
PHP 页面编码声明方法详解(header或meta)
2010/03/12 PHP
php截取后台登陆密码的代码
2012/05/05 PHP
Yii调试查看执行SQL语句的方法
2016/07/15 PHP
Packer 3.0 JS压缩及混淆工具 下载
2007/05/03 Javascript
解析使用JS 清空File控件的路径值
2013/07/08 Javascript
javascript设计模式--策略模式之输入验证
2015/11/27 Javascript
基于javascript制作经典传统的拼图游戏
2016/03/22 Javascript
JS 根据子网掩码,网关计算出所有IP地址范围示例
2020/04/23 Javascript
分享javascript、jquery实用代码段
2016/10/20 Javascript
使用jquery判断一个元素是否含有一个指定的类(class)实例
2017/02/12 Javascript
微信小程序登录态和检验注册过没的app.js写法
2019/05/22 Javascript
使用layer.msg 时间设置不起作用的解决方法
2019/09/12 Javascript
通过vue刷新左侧菜单栏操作
2020/08/06 Javascript
Python最基本的数据类型以及对元组的介绍
2015/04/14 Python
Python基于sklearn库的分类算法简单应用示例
2018/07/09 Python
Python模拟浏览器上传文件脚本的方法(Multipart/form-data格式)
2018/10/22 Python
在ubuntu16.04中将python3设置为默认的命令写法
2018/10/31 Python
Python爬虫实现获取动态gif格式搞笑图片的方法示例
2018/12/24 Python
对Python 两大环境管理神器 pyenv 和 virtualenv详解
2018/12/31 Python
OpenCV 边缘检测
2019/07/10 Python
python+jinja2实现接口数据批量生成工具
2019/08/28 Python
Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)
2020/01/03 Python
解决python3输入的坑——input()
2020/12/05 Python
荷兰超市:DEEN
2018/03/14 全球购物
法国二手手袋、手表和奢侈珠宝购物网站:Collector Square
2018/07/05 全球购物
用C#语言写出在本地创建一个UDP接收端口的具体过程
2016/02/22 面试题
灵泰克Java笔试题
2016/01/09 面试题
如何执行一个shell程序
2012/11/23 面试题
创业计划书——互联网商机
2014/01/12 职场文书
读书月活动方案
2014/05/22 职场文书
学校安全生产月活动总结
2014/07/05 职场文书
公共机构节能宣传周活动总结
2014/07/09 职场文书
优秀乡村医生先进事迹材料
2014/08/23 职场文书
公司保洁员管理制度
2015/08/04 职场文书
Python上下文管理器Content Manager
2021/06/26 Python
通过T-SQL语句创建游标与实现数据库加解密功能
2022/03/16 SQL Server