Forum und email
oci_define_by_name

oci_define_by_name

(PHP 5)

oci_define_by_name -- Uses a PHP variable for the define-step during a SELECT

Popis

bool oci_define_by_name ( resource statement, string column_name, mixed &variable [, int type] )

Defines PHP variables for fetches of SQL-Columns.

Seznam parametrů

statement

A valid OCI statement identifier.

column_name

The column name. Must be uppercased.

Take into consideration that Oracle uses ALL-UPPERCASE column names, whereby in your select you can also use lowercase. If you define a variable that doesn't exists in your select statement, no error will be issued.

variable

The PHP variable.

type

If you need to define an abstract datatype (LOB/ROWID/BFILE) you must allocate it first using oci_new_descriptor(). See also the oci_bind_by_name() function.

Návratové hodnoty

Vrací TRUE při úspěchu, FALSE při selhání.

Příklady

Příklad 1. oci_define_by_name() example

<?php
/* oci_define_by_name example - thies at thieso dot net (980219) */

$conn = oci_connect("scott", "tiger");

$stmt = oci_parse($conn, "SELECT empno, ename FROM emp");

/* the define MUST be done BEFORE oci_execute! */

oci_define_by_name($stmt, "EMPNO", $empno);
oci_define_by_name($stmt, "ENAME", $ename);

oci_execute($stmt);

while (
oci_fetch($stmt)) {
    echo
"empno:" . $empno . "\n";
    echo
"ename:" . $ename . "\n";
}

oci_free_statement($stmt);
oci_close($conn);
?>

Poznámky

Poznámka: In PHP versions before 5.0.0 you must use ocidefinebyname() instead. This name still can be used, it was left as alias of oci_define_by_name() for downwards compatability. This, however, is deprecated and not recommended.