Google

NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7">

OCIDefineByName

(PHP 3>= 3.0.7, PHP 4 )

OCIDefineByName -- SELECT 実行中、定義用の PHP 変数を使用する

説明

int OCIDefineByName ( int stmt, string Column-Name, mixed variable, int [type])

OCIDefineByName() は、SQL カラムを ユーザー定義の PHP 変数に取得します。 Oracle は、全ての大文字のカラム名を使用しますが、 select の中で小文字も書くことが可能であることに注意して下さい。 OCIDefineByName() は、 the Column-Name が大文字であることを仮定します。 select 文にない変数を定義する場合は、エラーは発生しないでしょう!

抽象 Datatype (LOB/ROWID/BFILE) を定義する必要がある場合、 まず OCINewDescriptor() 関数を用いてその 領域を確保する必要があります。 OCIBindByName() 関数も参照下さい。

例 1OCIDefineByName

<?php
/* OCIDefineByPos の例 thies@thieso.net (980219) */

$conn = OCILogon("scott","tiger");

$stmt = OCIParse($conn,"select empno, ename from emp");

/* the define MUST be done BEFORE ociexecute! */

OCIDefineByName($stmt,"EMPNO",$empno);
OCIDefineByName($stmt,"ENAME",$ename);

OCIExecute($stmt);

while (OCIFetch($stmt)) {
    echo "empno:".$empno."\n";
    echo "ename:".$ename."\n";
}

OCIFreeStatement($stmt);
OCILogoff($conn);
?>