db2_bind_param

(no version information, might be only in CVS)

db2_bind_param --  Associe une variable PHP à un paramètre d'une requête SQL

Description

bool db2_bind_param ( resource stmt, int parameter-number, string variable-name [, int parameter-type [, int data-type [, int precision [, int scale]]]] )

Associe une variable PHP à un paramètre dans la requête SQL retournée par db2_prepare(). Cette fonction vous donne plus de contrôle sur les types des paramètres, les types des données, la précision, et l'échelle pour le paramètre qu'en lui passant simplement une variable à l'intérieur du tableau d'entrée optionnel de la fonction db2_execute().

Liste de paramètres

stmt

Une requête préparée retournée par db2_prepare().

parameter-number

Spécifie la position du paramètre commençant à l'indice 1 dans la requête préparée.

variable-name

Une chaîne spécifiant le nom de la variable PHP à associer au paramètre spécifié par parameter-number.

parameter-type

Une constante spécifiant si la variable PHP devrait être associé au paramètre SQL en tant que paramètre entrant (DB2_PARAM_IN), que paramètre sortant (DB2_PARAM_OUT) ou en tant que paramètre qui accepte les entrées et les sorties (DB2_PARAM_INOUT).

data-type

Une constante spécifiant le type de données SQL que la variable PHP devrait être associée. Le paramètre doit prendre une des valeurs suivantes : DB2_BINARY, DB2_CHAR, DB2_DOUBLE ou DB2_LONG.

precision

Spécifie la précision à laquelle la variable devrait être associée à la base de données.

scale

Spécifie l'échelle à laquelle la variable devrait être associée à la base de données.

Valeurs de retour

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

Exemples

Exemple 1. Association de variables PHP à une requête préparée

La requête SQL dans l'exemple suivant utilise deux paramètres d'entrée dans la section WHERE. Nous appelons db2_bind_param() pour associer deux variables qui n'ont pas été déclarées ou assignées avant l'appel de db2_bind_param(); dans cet exemple, $lower_limit est assignée avant d'être appelée à db2_bind_param(), mais $upper_limit est assignée après l'appel de db2_bind_param(). Les variables doivent être associées et, pour les paramètres qui acceptent les entrées, nous devons leur assigner une valeur avant d'appeler db2_execute().

<?php

$sql
= 'SELECT nom, race, poids FROM animaux
    WHERE poids > ? AND poids < ?'
;
$conn = db2_connect($database, $user, $password);
$stmt = db2_prepare($conn, $sql);

// Nous pouvons déclarer la variable avant d'appeler db2_bind_param()
$lower_limit = 1;

db2_bind_param($stmt, 1, "lower_limit", DB2_PARAM_IN);
db2_bind_param($stmt, 2, "upper_limit", DB2_PARAM_IN);

// Nous pouvons aussi déclarer la variable après l'appel de db2_bind_param()
$upper_limit = 15.0;

if (
db2_execute($stmt)) {
    while (
$row = db2_fetch_array($stmt)) {
        print
"{$row[0]}, {$row[1]}, {$row[2]}\n";    
    }
}
?>

L'exemple ci-dessus va afficher :

Pook, chat, 3.2
Rickety Ride, chèvre, 9.7
Peaches, chien, 12.3

Voir aussi

db2_execute()
db2_prepare()

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