程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle 8 的函數介紹

Oracle 8 的函數介紹

編輯:Oracle數據庫基礎
這些函數允許你存取 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.

// 作者 [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. 用於存儲進程(程序)

// 作者 [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
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved