本文共 2584 字,大约阅读时间需要 8 分钟。
// 作者 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. 用于存储进程(程序) <?php// 作者 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 — 打开或关闭内部调试输出. 缺省时关闭来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8225414/viewspace-942800/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8225414/viewspace-942800/