oci_new_cursor
(PHP 5, PHP 7, PECL OCI8 >= 1.1.0)
oci_new_cursor — 新規カーソル (ステートメントハンドル) を割り当て、それを返す
説明
oci_new_cursor
( resource $connection
) : resource
指定された接続に新規カーソルを割り当てます。
返り値
新しいステートメントハンドル、あるいはエラー時に false
を返します。
例
例1 Oracle ストアドプロシージャにおける REF CURSOR のバインド
<?php// 以下のプロシージャを用意します// create or replace procedure myproc(myrc out sys_refcursor) as// begin// open myrc for select first_name from employees;// end;$conn = oci_connect("hr", "hrpwd", "localhost/XE");if (!$conn) { $m = oci_error(); trigger_error(htmlentities($m['message']), E_USER_ERROR);}$curs = oci_new_cursor($conn);$stid = oci_parse($conn, "begin myproc(:cursbv); end;");oci_bind_by_name($stid, ":cursbv", $curs, -1, OCI_B_CURSOR);oci_execute($stid);oci_execute($curs); // REF CURSOR を、ステートメント ID のように利用しますwhile (($row = oci_fetch_array($curs, OCI_ASSOC+OCI_RETURN_NULLS)) != false) { echo $row['FIRST_NAME'] . "<br />\n";}oci_free_statement($stid);oci_free_statement($curs);oci_close($conn);?>
注意
注意:
PHP バージョン 5.0.0 以前では、代わりに ocinewcursor() を使用しなければなりません。 まだこの名前を使用することができ、下位互換性のため oci_new_cursor() への別名として残されていますが、 推奨されません。