Forum und email

oci_define_by_name

(PHP 5, PECL oci8:1.1-1.2.4)

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 ] )

Définit les variables PHP pour les colonnes SQL récupérées.

Liste de paramètres

statement

Un identifiant de requête OCI valide.

column_name

Le nom de la colonne. Doit être en majuscule.

Notez que les colonnes Oracle sont toutes en majuscules, tandis que dans les SELECT, vous pouvez aussi les écrire en minuscules. Si vous définissez une variable qui n'existe pas dans la commande SELECT, vous ne serez pas prévenu par une erreur.

variable

La variable PHP.

type

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().

Valeurs de retour

Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.

Exemples

Example#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);
?>

Notes

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.