Services webmasters
Partenaires
Jeux concours gratuits
 
ocinewcollection
<<<
ocinewcursor ocinewdescriptor
>>>

7.72 Oracle 8
7 Index des fonctions
 Manuel PHP

Introduction
Pré-requis
Installation
Configuration à l'exécution
Types de ressources
Constantes prédefinies
Exemples
ocibindbyname
ocicancel
ocicloselob
ocicollappend
ocicollassign
ocicollassignelem
ocicollgetelem
ocicollmax
ocicollsize
ocicolltrim
ocicolumnisnull
ocicolumname
ocicolumnprecision
ocicolumnscale
ocicolumnsize
ocicolumntype
ocicolumntyperaw
ocicommit
ocidefinebyname
ocierror
ociexecute
ocifetch
ocifetchinto
ocifetchstatement
ocifreecollection
ocifreecursor
ocifreedesc
ocifreestatement
ociinternaldebug
ociloadlob
ocilogoff
ocilogon
ocinewcollection
->ocinewcursor
ocinewdescriptor
ocinlogon
ocinumcols
ociparse
ociplogon
ociresult
ocirollback
ocirowcount
ocisavelob
ocisavelobfile
ociserverversion
ocisetprefetch
ocistatementtype
ociwritelobtofile
ociwritetemporarylob

7.72.41 ocinewcursor() Retourne un nouveau pointeur à utiliser pour lier les pointeurs de références

[ Exemples avec ocinewcursor ]   PHP 3>= 3.0.8, PHP 4

resource  ocinewcursor ( resource   conn )

ocinewcursor alloue un nouveau pointeur de commande, pour la connexion conn .

Utiliser un REF CURSOR issue d'une procédure enregistrée

<?php   
// supposons que votre procédure stockée info.output retourne un curseur de référence dans :data

$conn = OCILogon("scott","tiger");
$curs = OCINewCursor($conn);
$stmt = OCIParse($conn,"begin info.output(:data); end;");

ocibindbyname($stmt,"data",&$curs,-1,OCI_B_CURSOR);
ociexecute($stmt);
ociexecute($curs);

while (
OCIFetchInto($curs,&$data)) {
    
var_dump($data);
}

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

Utiliser un REF CURSOR issue d'une commande SELECT

<?php   
print "<HTML><BODY>";
$conn = OCILogon("scott","tiger");
$count_cursor = "CURSOR(select count(empno) num_emps from emp " .
                
"where emp.deptno = dept.deptno) as EMPCNT from dept";
$stmt = OCIParse($conn,"select deptno,dname,$count_cursor");

ociexecute($stmt);
print
"<TABLE BORDER=\"1\">";
print
"<TR>";
print
"<TH>DEPT NAME</TH>";
print
"<TH>DEPT #</TH>";
print
"<TH># EMPLOYEES</TH>";
print
"</TR>";

while (
OCIFetchInto($stmt,&$data,OCI_ASSOC)) {
    print
"<TR>";
    
$dname  = $data["DNAME"];
    
$deptno = $data["DEPTNO"];
    print
"<TD>$dname</TD>";
    print
"<TD>$deptno</TD>";
    
ociexecute($data["EMPCNT"]);
    while (
OCIFetchInto($data["EMPCNT"],&$subdata,OCI_ASSOC)) {
        
$num_emps = $subdata["NUM_EMPS"];
        print  
"<TD>$num_emps</TD>"?>

<< ocinewcursor >>
ocinewcollection Oracle 8 ocinewdescriptor
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -