Especificación: | CLI de DB2 1.1 | ODBC 1.0 | ISO CLI |
SQLExecute() ejecuta, una o más veces, una sentencia que se ha preparado satisfactoriamente con SQLPrepare(). La sentencia se ejecuta utilizando el valor actual de las variables de aplicación que se enlazaron a marcadores de parámetros mediante SQLBindParameter().
Sintaxis
SQLRETURN SQLExecute (SQLHSTMT StatementHandle); /* hstmt */
Argumentos de la función
Tabla 46. Argumentos de SQLExecute
Tipo de datos | Argumento | Uso | Descripción |
---|---|---|---|
SQLHSTMT | StatementHandle | entrada | Descriptor de contexto de sentencia. |
Uso
La serie de la sentencia de SQL puede contener marcadores de parámetros. Un marcador de parámetro se representa mediante un carácter ? y sirve para indicar una posición en la sentencia donde se colocará un valor proporcionado por la aplicación cuando se invoque SQLExecute(). Este valor se puede obtener a partir de una variable de aplicación. Se utiliza SQLBindParameter() para enlazar el área de almacenamiento de la aplicación con el marcador de parámetro.
Se deben enlazar todos los parámetros antes de invocar SQLExecute().
Después de procesar los resultados de la llamada a SQLExecute(), la aplicación puede ejecutar de nuevo la sentencia con los mismos u otros valores de parámetros.
Las sentencias ejecutadas por SQLExecDirect() no se pueden ejecutar de nuevo invocando SQLExecute(); se debe primero invocar SQLPrepare().
Si se genera un conjunto resultante, SQLFetch() recupera la siguiente fila de datos en variables enlazadas. También se pueden recuperar datos llamando a SQLGetData() para cualquier columna que no esté enlazada.
Códigos de retorno
Se devuelve SQL_NO_DATA_FOUND si la sentencia de SQL es un UPDATE de búsqueda o un DELETE de búsqueda y no hay ninguna fila que cumpla la condición de búsqueda.
Diagnósticos
Los SQLSTATE para SQLExecute() incluyen todos los
correspondientes a SQLExecDirect() (consulte la Tabla 45), excepto HY009 y HY090, y también
incluyen los SQLSTATE de la Tabla 47.
Tabla 47. SQLSTATE de SQLExecute
SQLSTATE | Descripción | Explicación |
---|---|---|
HY010 | Error de secuencia de función. | El descriptor de contexto de sentencia (StatementHandle) especificado no está en estado preparado. Se llama a SQLExecute() sin antes llamar a SQLPrepare(). |
08004 | El servidor de aplicaciones rechazó la conexión. | El nombre de usuario o la contraseña utilizados para conectar con la fuente de datos no son correctos. |
08S01 | Error en el enlace de comunicaciones. | El enlace de comunicaciones entre la aplicación y la fuente de datos se interrumpió antes de finalizar la función. |
39001 | Una función definida por el usuario ha devuelto un SQLSTATE no válido. | Una función definida por el usuario ha devuelto un SQLSTATE que no es válido. |
59101 | Usuario no definido. | El usuario no está definido en la base de datos de control del Centro de administración de dispositivos portátiles. |
59102 | Contraseña no correcta. | La contraseña del usuario no coincide con la contraseña definida en el Centro de administración de dispositivos portátiles. |
59103 | Grupo no definido. | El grupo no está definido en el Centro de administración de dispositivos portátiles. |
59104 | Aplicación no definida. | La aplicación no está definida en el Centro de administración de dispositivos portátiles. |
59105 | Suscripción no definida. | La suscripción con "AgentAdapter" no está definida en el Centro de administración de dispositivos portátiles. |
59106 | Suscripción no completada. | La suscripción no dispone de toda la información necesaria para invocar un procedimiento almacenado remoto. |
59120 | Error de conversión XML. | AgentAdapter ha fallado al convertir los datos de entrada del usuario en un documento XML. |
59121 | Se ha producido un error general de AgentAdapter. | Se ha producido un error general de AgentAdapter. |
59122 | Ha fallado la carga de la biblioteca. | No se encuentran en el sistema algunas de las bibliotecas necesarias. |
HY501 | Nombre no válido de la fuente de datos. | El nombre de fuente de datos especificado no es válido. |
Restricciones
Ninguna.
Consulta relacionada