(PECL CUBRID >= 8.3.0)
cubrid_execute — Exécute une requête SQL préparée
La fonction cubrid_execute() est utilisée pour exécuter
une requête SQL. Elle exécute la requête en utilisant le paramètre
conn_identifier
et SQL, puis, retourne l'identifiant
de requête créé. Elle est utilisée pour une exécution simple de requête,
où le liage de paramètre n'est pas nécessaire. De plus, la fonction
cubrid_execute() est utilisée pour exécuter la requête
préparée en utilisant cubrid_prepare() et cubrid_bind().
À ce point, vous devez spécifier les arguments
request_identifier
et option
.
L'option
est utilisé pour déterminer si l'on doit
récupérer l'IOD après l'exécution de la requête, et si l'on doit exécuter
la requête en mode asynchrone ou non. CUBRID_INCLUDE_OID
et CUBRID_ASYNC
(ou CUBRID_EXEC_QUERY_ALL
si vous voulez exécuter plusieurs requêtes SQL)
peuvent être spécifiés en utilisant l'opérateur OR. Si l'opérateur n'est
pas spécifié, aucun des deux ne sera sélectionné. Si le drapeau
CUBRID_EXEC_QUERY_ALL
est défini, le mode synchrone (sync_mode) sera
utilisé pour récupérer les résultats de la requête, et dans un tel cas,
les règles suivantes seront appliquées :
Si le premier paramètre est request_identifier
pour
exécuter la fonction cubrid_prepare(), vous pouvez spécifier
une option, CUBRID_ASYNC
uniquement.
conn_identifier
Identifiant de connexion.
sql
SQL à exécuter.
option
Option d'exécution de la requête : CUBRID_INCLUDE_OID
, CUBRID_ASYNC
, CUBRID_EXEC_QUERY_ALL
.
request_identifier
Identifiant de requête pour la fonction cubrid_prepare().
Un identifiant de requête, lorsque l'opération a été réalisée avec succès et
que le premier paramètre est l'identifiant de connexion ; true
, lorsque
l'opération a été réalisée avec succès et que le premier paramètre est
l'identifiant de requête, ou false
si une erreur survient.
Version | Description |
---|---|
8.4.0 |
Ajout d'une nouvelle option : CUBRID_EXEC_QUERY_ALL .
|
Exemple #1 Exemple avec cubrid_execute()
<?php
$conn = cubrid_connect("localhost", 33000, "demodb");
$result = cubrid_execute($conn, "SELECT code FROM event WHERE name='100m Butterfly' and gender='M'", CUBRID_ASYNC);
$row = cubrid_fetch_array($result, CUBRID_ASSOC);
$event_code = $row["code"];
cubrid_close_request($result);
$history_req = cubrid_prepare($conn, "SELECT * FROM history WHERE event_code=?");
cubrid_bind($history_req, 1, $event_code, "number");
cubrid_execute($history_req);
printf("%-20s %-9s %-10s %-5s\n", "athlete", "host_year", "score", "unit");
while ($row = cubrid_fetch_array($history_req, CUBRID_ASSOC)) {
printf("%-20s %-9s %-10s %-5s\n",
$row["athlete"], $row["host_year"], $row["score"], $row["unit"]);
}
cubrid_close_request($history_req);
cubrid_disconnect($conn);
?>
L'exemple ci-dessus va afficher :
athlete host_year score unit Phelps Michael 2004 51.25 time