当前位置: 首页 > 图文教程 > 数据库 > MSSQL > Oracle 8 的函数介绍

MSSQL
将表数据生成SQL脚本的存储过程和工具
初学者必读:经典的数据库记录分页代码
使用SQL Server 2008管理非结构化数据
利用索引提高SQL Server数据处理的效率
SQL Server数据库内存会不断增加的问题分析
面向对象设计过程中必须遵守的相关准则
SQL Server 2005如何设置多字段做关键字
SQL Server 2005数据库中表的递归查询
SQL Server中使用DTS设计器进行数据转移
在查询分析器理启动或停止SQL Agent服务
教你快速掌握SQL语言中游标的使用技巧
将SQL Server中所有表的列信息显示出来
使用SQL语句快速获取SQL Server数据字典
Sql Server 2005中的架构用户登录和角色
如何保存数据库连接参数代码及步骤详解
如何使用SQL Server数据库嵌套子查询
SQL Server从安装到建库为新手寻找捷径
课程讲解 如何使用SQL Server校勘功能
数据库理论:学习基于SQL数据库的算法
教你使用SQL Server数据库进行网络链接

MSSQL 中的 Oracle 8 的函数介绍


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 140 ::
收藏到网摘: n/a

  这些函数允许你存取 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.  

<?php  
// 作者 [email protected]  

// 使用参数配置: 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. 用于存储进程(程序)  

<?php  
// 作者 [email protected]  
$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