Manuel PHP
Précédent |  | Suivant

# 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. Notez que les colonnes Oracle 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.

Précédent | Sommaire | Suivant
oci_connect | Niveau supérieur | oci_error