cubrid_execute
(PECL CUBRID >= 8.3.0)
cubrid_execute — Ejecutar una sentencia SQL preparada
Descripción
La función cubrid_execute() se usa para ejecutar la sentencia SQL dada. Ejecuta la consulta usando conn_identifier y SQL, y luego devuelve el gestor de solicitud creado. Se usa para la simple ejecución de la consulta, donde el parámetro de enlace no es necesario. Además, la función cubrid_execute() se usa para ejecutar la sentencia preparada por medio de cubrid_prepare() y cubrid_bind(). En este momento se necesitan especificar los argumentos request_identifier y option.
El argumento option se usa para determinar si recibir el OID después de la ejecución de la consulta y si ejecutar la consulta en modo síncrono o asíncrono. Se pueden especificar CUBRID_INCLUDE_OID y CUBRID_ASYNC (o CUBRID_EXEC_QUERY_ALL si se desea ejecutar múltiples sentencias SQL) usando un operador OR a nivel de bit. Si no se especifica, ninguna de ellas será seleccionada. Si la bandera CUBRID_EXEC_QUERY_ALL está activa, el modo síncrono (sync_mode) se usa para devolver los resultados de la consulta, y en esos casos las siguientes reglas serán aplicadas:
- El valor devuelto es el resultado de la primera petición.
- Si sucede un error en la consulta, la ejecución se procesa como un fallo.
- Para una consulta compuesta de varias consultas consecutivas (q1, q2, q3) si sucede un error en q2 después del éxito de la ejecución de q1, el resultado de q1 permanece válido. Esto es, los éxitos previos en las ejecucuiones de consultas no se repiten cuando sucede un error.
- Si una consulta se ejecuta de forma satisfactoria, el resultado de la segunda consulta puede obtenerse usando la función cubrid_next_result().
Si el primer argumento es request_identifier para ejecutar la función cubrid_prepare(), se puede especificar una opción, solamente CUBRID_ASYNC.
Parámetros
- conn_identifier
-
Identificador de conexión.
- SQL
-
SQL a ser ejecutado.
- option
-
La opción de ejecución de la consulta CUBRID_INCLUDE_OID, CUBRID_ASYNC, CUBRID_EXEC_QUERY_ALL.
- request_identifier
-
Identificador de cubrid_prepare().
Valores devueltos
Gestor de solicitud, cuando el proceso tiene éxito y el primer parámetro es conn_identifier; TRUE, cuando el proceso tiene éxito y el primer argumento es request_identifier.
FALSE, cuando el proceso no tiene éxito.
Historial de cambios
| Versión | Descripción |
|---|---|
| 8.4.0 | Añade CUBRID_EXEC_QUERY_ALL como opción nueva. |
Ejemplos
Example #1 Ejemplo de 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);
?>
El resultado del ejemplo sería:
athlete host_year score unit Phelps Michael 2004 51.25 time
Ver también
- cubrid_prepare() - Preparar una sentencia SQL para su ejecución
- cubrid_bind() - Vincular variables para una sentencia preparada como parámetros
- cubrid_next_result() - Get result of next query when executing multiple SQL statements
- cubrid_close_request() - Cerrar el gestor de solicitud
- cubrid_commit() - Consigna una transacción
- cubrid_rollback() - Retroceder una transacción
