ociDefineByName

ociDefineByName -- Utilise une variable PHP pour la phase de définition, dans une commande SELECT.

Description

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

ocidefinebyname( ) copie les valeurs issues de colonnes SQL Column-Name dans les variables PHP . Méfiez-vous des colonnes Oracle qui sont toutes en majuscule , tandis que dans les SELECT , vous pouvez aussi les écrire en minuscules . ocidefinebyname( ) s 'attends à ce que Column-Name soit en majuscules . Si vous définissez une variable qui n ' existe pas dans la commande SELECT , vous ne serez pas prévenu par une erreur .

Si vous avez besoin de définir un type de données abstrait , tel que ( LOB / ROWID / BFILE) , vous devez lui allouer la mémoire avec ocinewdescriptor( ) . Reportez-vous aussi à ocibindbyname( ) .

Exemple 1 . ociDefineByName

 
?php

 
/

 
*

 
Exemple

 
ociDefineByPos

 
par

 
thies@thieso.net

 
(

 
980219

 
)

 
*

 
/

 
$conn

 
=

 
ociLogon("scott"

 
,"tiger")

 
;

 
$stmt

 
=

 
ociparse($conn

 
,"select

 
empno

 
,

 
ename

 
from

 
emp")

 
;

 
/

 
*

 
La

 
définition

 
DOIT

 
être

 
faîte

 
AVANT

 
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)

 
;

 
?