您的位置:首页技术开发数据库教程 → Oracle 8 的函数介绍

Oracle 8 的函数介绍

时间:2004/11/7 4:14:00来源:本站整理作者:蓝点我要评论(0)

这些函数允许你存取 Oracle8 和 Oracle7 数据库. 他使用 Oracle8 的点用接口 (OCI8). 使用这个扩展模块,你需要 Oracle8 客户端库文件.  



这个扩展模块比标准 Oracle 模块更流畅。他支持用于 Oracle 站位符的全局和本机 PHP 变量。有完整的 LOB, 文件和 ROWID 支持,允许使用用户提供的定义的变量.  



在使用这个扩展之前,确认你已经正确的安装了 oracle 用户需要的 Oracle 环境变量, 和用于 daemon 用户的一样. 需要设置的变量大致为如下几个:  



ORACLE_HOME  



ORACLE_SID  



LD_PRELOAD  



LD_LIBRARY_PATH  



NLS_LANG  



ORA_NLS33  





在设置了你的 web 服务器用户的环境变量之后,确认在你的 oracle 组里面加入了 web服务器用户 (nobody, www).  



例 1.  




// 作者 sergo@bacup.ru  



// 使用参数配置: OCI_DEFAULT 执行命令来延迟执行  

OCIExecute($stmt, OCI_DEFAULT);  



// 得到数据:  



$result = OCIResult($stmt, $n);  

if (is_object ($result)) $result = $result->load();  



// 进行插入或者更新操作:  



$sql = "insert into table (field1, field2) values (field1 = ’value’,  

field2 = empty_clob()) returning field2 into :field2";  

OCIParse($conn, $sql);  

$clob = OCINewDescriptor($conn, OCI_D_LOB);  

OCIBindByName ($stmt, ":field2", &$clob, -1, OCI_B_CLOB);  

OCIExecute($stmt, OCI_DEFAULT);  

$clob->save ("some text");  



?>  





你可以用同样简单的方法存储程序命令行.  



例 2. 用于存储进程(程序)  




// 作者 webmaster@remoterealty.com  

$sth = OCIParse ( $dbh, "begin sp_newaddress( :address_id, ’$firstname’,  

’$lastname’, ’$company’, ’$address1’, ’$address2’, ’$city’, ’$state’,  

’$postalcode’, ’$country’, :error_code );end;" );  



// 这个调用用于存储进程 sp_newaddress, 使用 :address_id 开始一个  

// in/out 变量和 :error_code 用于输出变量.  

// 这样实现捆绑:  



OCIBindByName ( $sth, ":address_id", $addr_id, 10 );  

OCIBindByName ( $sth, ":error_code", $errorcode, 10 );  

OCIExecute ( $sth );  



?>  





函数列表  

OCIDefineByName — 在一个 SELECT 过程中定义步骤里使用 PHP 变量  

OCIBindByName — 为一个 Oracle 站位符捆绑一个 PHP 变量  

OCILogon — 建立一个与 Oracle 的连接  

OCIPLogon — 连接一个 Oracle 数据库同时使用存在的连接登陆,返回一个新的 session.  

OCINLogon — 连接一个 Oracle 数据库同时使用新的连接登陆,返回一个新的 session.  

OCILogOff — 断开与 Oracle 的连接  

OCIExecute — 执行一个语句  

OCICommit — 提交 outstanding transactions  

OCIRollback — 回退 outstanding transactions  

OCINewDescriptor — 初始化一个新的空的描述符 LOB/FILE (LOB 是默认值)  

OCIRowCount — 获得返回的行数  

OCINumCols — 返回一个语句结果的列数  

OCIResult — 返回返回行的列数  

OCIFetch — 在结果缓冲区里取得下一行  

OCIFetchInto — 在结果数组里取得下一行  

OCIFetchStatement — 以数据形式返回结果数据的所有行.  

OCIColumnIsNULL — 测试结果的某列是否为空 NULL  

OCIColumnSize — 返回结果列的大小  

OCIServerVersion — 返回包含服务器信息的字符串.  

OCIStatementType — 返回一个 OCI 语句的类型.  

OCINewCursor — 返回一个新的光标 (语句句柄) - 用于捆绑 ref-cursors!  

OCIFreeStatement — 释放与某语句相关的所有资源.  

OCIFreeCursor — 释放与某光标相关的所有资源.  

OCIFreeDesc — 删除一个大型的物体描述符.  

OCIColumnName — 返回列的名字.  

OCIColumnType — 返回列的类型.  

OCIParse — 解析一个查询返回一个语句  

OCIError — 返回最后一个 stmt|conn|global 错误. 如果没有错误发生则返回 false.  

OCIInternalDebug — 打开或关闭内部调试输出. 缺省时关闭  

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 oracle10g安装图解(wi

最新文章 数据库流行度排行2019oracle10g安装图解(wi SQL2008全部数据导出导入两种方法SQL2005新建复制“找不到存储过程 错误:28Dos远程登录mysql数据库详细图文教程mysql怎么开启远程登录功能

人气排行 mysql自动定时备份数据库的最佳方法-支持wiVisual Foxpro 6.0安装向导图文教程SQL Server 2008 安装图文教程SQL2008全部数据导出导入两种方法SQL 2000/2005/2008 的收缩日志方法,和清理mysql出 Can't connect to MySQL server onoracle10g安装图解(win7)sql2005安装图解_(sql server2005)安装教程