PHP kézikönyv
Előző
Következő
Az OCINewCursor() egy új eredménytábla kezelő kurzort nyit meg a megadott kapcsolaton.
Példa 1.
REF CURSOR használata egy tárolt eljárásból
?php / / feltesszük, hogy az info.kimenet tárolt eljárásod egy "ref cursor"-t / / ad vissza az :adat-ban $conn = OCILogon("scott" ,"tiger"); $kurzor = OCINewCursor($conn); $stmt = OCIParse($conn ,"begin info.kimenet(:adat); end ;"); ocibindbyname($stmt ,"adat", $kurzor, -1, OCI_B_CURSOR); ociexecute($stmt); ociexecute($kurzor); while (OCIFetchInto($kurzor, $adat)) {var_dump($adat);} OCIFreeStatement($stmt); OCIFreeCursor($kurzor); OCILogoff($conn);?
Példa 2.
REF CURSOR használata select parancsban
?php print "HTML BODY"; $conn = OCILogon("scott" ,"tiger"); $szamlalo_kurzor = "CURSOR(select count(dolgozoid) dolgozo_szam from dolgozok ". "where dolgozok.reszleg = reszleg.reszlegid) as DSZAM from reszleg"; $stmt = OCIParse($conn ,"select reszlegid,rnev,$szamlalo_kurzor"); ociexecute($stmt); print" TABLE BORDER=\"1\ ""; print "TR"; print "TH RÉSZLEG NÉV / TH"; print "TH RÉSZLEG SZÁM / TH"; print "TH DOLGOZÓK SZÁMA / TH"; print "/ TR"; while (OCIFetchInto($stmt, $adat, OCI_ASSOC)) {print "TR"; $rnev = $adat["RNEV"]; $rszam = $adat["RESZLEGID"]; print "TD $rnev / TD"; print "TD $rszam / TD"; ociexecute($adat["DSZAM"]); while (OCIFetchInto($adat["DSZAM"], $reszadat, OCI_ASSOC)) {$dszam = $reszadat["DOLGOZO_SZAM"]; print "TD $dszam / TD";} print "/ TR";} print "/ TABLE"; print "/ BODY / HTML"; OCIFreeStatement($stmt); OCILogoff($conn);?
Előző
Tartalom
Következő
Fel