PHP Conference Nagoya 2025

cubrid_execute

(PECL CUBRID >= 8.3.0)

cubrid_executeExécute une requête SQL préparée

Description

cubrid_execute(resource $conn_identifier, string $sql, int $option = 0): resource
cubrid_execute(resource $request_identifier, int $option = 0): bool

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 :

  • La valeur retournée sera le résultat de la première requête.
  • Si une erreur survient dans une des requêtes, l'exécution sera vu comme étant un échec.
  • Pour une requête composée de q1 q2 et q3, si une erreur survient dans q2 alors que q1 a été exécutée avec succès, le résultat de q1 reste valide. Ainsi, l'exécution avec succès d'une précédente requête ne sera pas annulée lorsqu'une erreur survient.
  • Si une requête est exécutée avec succès, le résultat de la seconde requête peut être obtenu en utilisant la fonction cubrid_next_result().

Si le premier paramètre est request_identifier pour exécuter la fonction cubrid_prepare(), vous pouvez spécifier une option, CUBRID_ASYNC uniquement.

Liste de paramètres

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().

Valeurs de retour

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.

Historique

Version Description
8.4.0 Ajout d'une nouvelle option : CUBRID_EXEC_QUERY_ALL.

Exemples

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

Voir aussi

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top