oci_define_by_name

(PHP 5)

oci_define_by_name --  Utilise une variable PHP pour la phase de définition, dans une commande SELECT Oracle

Description

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

oci_define_by_name() copie les valeurs issues de la colonne column_name de la commande exécutée statement, dans la variable PHP &variable. Méfiez-vous des colonnes Oracle qui sont toutes en majuscules, tandis que dans les SELECT, vous pouvez aussi les écrire en minuscules. oci_define_by_name() s'attend à ce que column_name soit en majuscules. Si vous définissez une variable qui n'existe pas dans la commande SELECT, vous ne serez pas prévenu par une erreur.

type est le type de données à lire. Si vous avez besoin de définir un type de données abstrait, tel (LOB/ROWID/BFILE), vous devez lui allouer la mémoire avec oci_new_descriptor(). Reportez-vous aussi à oci_bind_by_name().

Exemple 1. Exemple avec oci_define_by_name()

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

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

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

/* La définition doit intervenir avant 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);
?>

Note : Dans les versions de PHP antérieures à la version 5.0.0, vous devez utiliser la fonction ocidefinebyname(). Cet ancien nom est toujours utilisable : un alias a été fait vers la fonction oci_define_by_name(), pour assurer la compatibilité ascendante. Toutefois, il est recommandé de ne plus l'utiliser.

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:02:12