(PECL ibm_db2 >= 1.0.0)
db2_prepare — Prépare une requête SQL à être exécutée
db2_prepare() crée une requête SQL préparée qui peut
inclure aucun ou plusieurs marqueurs (caractères ?)
représentant les paramètres d'entrée, sortie ou d'entrée/sortie. Il
est possible de passer des paramètres à la requête préparée en utilisant la
fonction db2_bind_param(), s'il n'y a que des entrées,
il est possible d'utiliser db2_execute().
Il y a trois principaux avantages d'utiliser les requêtes préparées dans l'application :
connectionstatementoptions
Retourne une ressource d'instruction si la requête SQL a été analysée et
préparée avec succès par le serveur de base de données. Retourne false
si le serveur de base de données a retourné une erreur. Il est possible de
déterminer quelle erreur a été retournée en appelant la fonction
db2_stmt_error() ou db2_stmt_errormsg().
Exemple #1 Préparation et exécution d'une requête SQL avec des marqueurs
L'exemple suivant prépare une requête INSERT qui accepte quatre marqueurs, ensuite itère sur le tableau contenant les valeurs d'entrées qui sera passé à la fonction db2_execute().
<?php
$animaux = array(
array(0, 'chat', 'Pook', 3.2),
array(1, 'chien', 'Peaches', 12.3),
array(2, 'cheval', 'Smarty', 350.0),
);
$insert = 'INSERT INTO animaux (id, race, nom, poids)
VALUES (?, ?, ?, ?)';
$stmt = db2_prepare($conn, $insert);
if ($stmt) {
foreach ($animaux as $animal) {
$result = db2_execute($stmt, $animal);
}
}
?>