(PECL CUBRID >= 8.3.0)
cubrid_prepare — Prépare une requête SQL pour son exécution
La fonction cubrid_prepare() compile une requête SQL pour un gestionnaire de connexion donné et retourne un gestionnaire qui représente la requête pré-compilée.
Une requête préparée peut être exécutée plusieurs fois, ce qui est efficace pour une
exécution répétée ou pour traiter de gros volumes de données. Une seule requête peut
être utilisée, et un paramètre peut être marqué par un point d'interrogation
(?) à l'emplacement approprié dans la requête SQL. Un paramètre est
ajouté lors de la liaison d'une valeur dans la clause VALUES d'une
instruction INSERT ou dans la clause WHERE. Il
est à noter qu'une valeur ne peut être liée à un paramètre qu'en utilisant la fonction
cubrid_bind().
conn_identifierprepare_stmtoptionCUBRID_INCLUDE_OID.
Identifiant de requête en cas de succès, ou false si une erreur survient.
Exemple #1 Exemple avec cubrid_prepare()
<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$sql = <<<EOD
SELECT g.event_code, e.name
FROM game g
JOIN event e ON g.event_code=e.code
WHERE host_year = ? AND event_code NOT IN (SELECT event_code FROM game WHERE host_year=?) GROUP BY event_code;
EOD;
$req = cubrid_prepare($conn, $sql);
cubrid_bind($req, 1, 2004);
cubrid_bind($req, 2, 2000);
cubrid_execute($req);
$row_num = cubrid_num_rows($req);
printf("There are %d event that exits in 2004 olympic but not in 2000. For example:\n\n", $row_num);
printf("%-15s %s\n", "Event_code", "Event_name");
printf("----------------------------\n");
$row = cubrid_fetch_assoc($req);
printf("%-15d %s\n", $row["event_code"], $row["name"]);
$row = cubrid_fetch_assoc($req);
printf("%-15d %s\n", $row["event_code"], $row["name"]);
cubrid_disconnect($conn);
?>L'exemple ci-dessus va afficher :
There are 27 event that exits in 2004 olympic but not in 2000. For example: Event_code Event_name ---------------------------- 20063 +91kg 20070 64kg