Функции Язык программирования PHP

OCINewCursor

(PHP 3>= 3.0.8, PHP 4)

OCINewCursor - возвращает новый курсор (Statement-Handle/дескриптор оператора).

Описание

int OCINewCursor (int conn)

OCINewCursor() выделяет новый дескриптор оператора в специфицированном соединении.

Пример 1. Использование REF CURSOR из хранимой процедуры
<?php 
// предположим, что ваша хранимая процедура info.output возвращает ref-курсор 
в :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); 
?>
Пример 2. Использование REF CURSOR в операторе выборки/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>"; } print "</TR>"; } print "</TABLE>"; 
print "</BODY></HTML>"; OCIFreeStatement($stmt); OCILogoff($conn); 
?>

Назад Оглавление Вперёд
OCINewCollection Вверх OCINewDescriptor

Глава 54. Переход от PHP 2 к PHP 3

PHP имеет уже долгую историю развития: легендарный PHP 1.0, PHP/FI, PHP 3.0 и PHP 4.0.

1. Переход от PHP 2 к PHP 3.

1. Переход от PHP 2 к PHP 3.

PHP/FI 2.0 больше не поддерживается. См. соответствующий раздел учебника о переходе от PHP/FI 2.0.

Если вы всё ещё работаете в PHP 2, мы настоятельно рекомендуем перейти сразу к PHP 4.