首页 > 数据库 > Oracle > 正文

Oracle 8 资料库函式库

2024-08-29 13:41:37
字体:
来源:转载
供稿:网友
    由于本函式库都是呼叫 Oracle8 Call-Interface (OCI8) 来存取 Oracle 资料库,因此在装设 Oracle 8 Client 的 Web 伺服器上,可用本函式库存取 Oracle 7.x 或 8.x 二种版本的资料库伺服器。
OCIDefineByName:让 SELECT 指令可使用 php 变数。OCIBindByName:让动态 SQL 可使用 PHP 变数。OCILogon:开启与 Oracle 的连结。OCILogOff:关闭与 Oracle 的连结。OCIExecute:执行 Oracle 的指令区段。OCICommit:将 Oracle 的交易处理付诸实行。OCIRollback:撤消当前交易。OCINumRows:取得受影响栏位的数目。OCIResult:从目前列 (row) 的资料取得一栏 (column)。OCIFetch:取得传回资料的一列 (row)。OCIFetchInto:取回 Oracle 资料放入阵列。OCIColumnIsNULL:测试传回行是否为空的。OCIColumnSize:取得栏位型态的大小。OCINewDescriptor:初始新的 LOB/FILE 描述。OCIParse:分析 SQL 语法。    要使用这个函式库,要在安装 PHP 及 Apache Server 之前先将 Oracle 资料库安装好,并确定 Oracle 能够顺利运作。之后在 PHP 设定 (configure) 时加入 --with-oracle=DIR 的选项,DIR 就是 $ORACLE_HOME 环境变数,例如: ./configure --with-oracle=/abc/def/oracle/PRodUCt/7.0.3 --with-apache=../apache_1.3.x --enable-track-vars     以下的范例是 stevel@nettek-llc.com (22-Jan-1999) 所提供的。这个范例是传回 Oracle 中 sid1 资料库 (Database) 的 EMP 资料表 (Table) 所有资料。帐号是 SCOTT、密码为 TIGER。
putenv("ORACLE_SID=sid1");
putenv("ORACLE_HOME=/u01/app/oracle/product/8.0.5");

$handle = ora_plogon("SCOTT@sid1",  "TIGER") or die;
$cursor = ora_open($handle);
ora_commitoff($handle);

$query = "SELECT * FROM EMP";
ora_parse($cursor, $query) or die;
ora_exec($cursor);

echo  "/n";
echo  "$query/n/n";
$numcols = 0;
while(ora_fetch($cursor)) {
    $numcols = ora_numcols($cursor);
    for ($column=0; $column < $numcols; $column++) {
        $data = trim(ora_getcolumn($cursor, $column));
        if($data ==  "") $data = "NULL";
        echo  "$data/t";
    }
    echo  "/n";
}
$numrows = ora_numrows($cursor);
echo  "/nROWS RETURNED: $numrows/n";
echo  "/n";

ora_close($cursor);

?>
kk@shonline.de (05-Aug-1998) 指出 ORACLE_HOME 为 Oracle 的安装路径,ORACLE_SID 为 Oracle 的资料库名称,若不知道这二个环境变数可以用 sqlplus 连上 Oracle 来查证。Ora_Bind:连结 PHP 变数到 Oracle 参数。Ora_Close:关闭一个 Oracle 的 cursor。Ora_ColumnName:得到 Oracle 传回列 (Column) 的名称。
Ora_ColumnType:得到 Oracle 传回列 (Column) 的型态。Ora_Commit:将 Oracle 的交易处理付诸实行。Ora_CommitOff:关闭自动执行 Oracle 交易更动的功能。Ora_CommitOn:打开自动执行 Oracle 交易更动的功能。Ora_Error:获得 Oracle 错误讯息。Ora_ErrorCode:获得 Oracle 错误代码。Ora_Exec:执行 Oracle 的指令区段。Ora_Fetch:取得传回资料的一列 (row)。Ora_GetColumn:从传回列 (row) 的资料取得一栏 (column)。Ora_Logoff:结束与 Oracle 的连结。Ora_Logon:开启与 Oracle 的连结。Ora_Open:开启 Oracle 的 cursor。Ora_Parse:分析 SQL 语法。Ora_Rollback:撤消当前交易。Ora_Do:快速的 SQL 查询。Ora_FetchInto:取回 Oracle 资料放入阵列。Ora_ColumnSize:取得栏位型态的大小。Ora_Numcols:取得栏位的数目。Ora_PLogon:开启与 Oracle 的长期连结。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表