Oharra
Baimena behar duzu orria atzitzeko. Direktorioetan saioa has dezakezu edo haiek alda ditzakezu.
Baimena behar duzu orria atzitzeko. Direktorioak alda ditzakezu.
Cada función de ODBC devuelve un código, conocido como código de retorno, que indica el éxito o el error generales de la función. La lógica del programa se basa generalmente en códigos de retorno.
Por ejemplo, el código siguiente llama a SQLFetch para recuperar las filas de un conjunto de resultados. Comprueba el código de retorno de la función para determinar si se alcanzó el final del conjunto de resultados (SQL_NO_DATA), si se devolvió información de advertencia (SQL_SUCCESS_WITH_INFO) o si se produjo un error (SQL_ERROR).
SQLRETURN rc;
SQLHSTMT hstmt;
while ((rc=SQLFetch(hstmt)) != SQL_NO_DATA) {
if (rc == SQL_SUCCESS_WITH_INFO) {
// Call function to display warning information.
} else if (rc == SQL_ERROR) {
// Call function to display error information.
break;
}
// Process row.
}
El código de retorno SQL_INVALID_HANDLE siempre indica un error de programación y nunca se debe encontrar en tiempo de ejecución. Todos los demás códigos de retorno proporcionan información en tiempo de ejecución, aunque SQL_ERROR pueden indicar un error de programación.
En la tabla siguiente se definen los códigos de retorno.
| Código de retorno | Description |
|---|---|
| SQL_SUCCESS | La función se completó correctamente. La aplicación llama a SQLGetDiagField para recuperar información adicional del registro de encabezado. |
| SQL_SUCCESS_WITH_INFO | La función se completó correctamente, posiblemente con un error nofatal (advertencia). La aplicación llama a SQLGetDiagRec o SQLGetDiagField para recuperar información adicional. |
| SQL_ERROR | Error en la función. La aplicación llama a SQLGetDiagRec o SQLGetDiagField para recuperar información adicional. El contenido de los argumentos de salida de la función no está definido. |
| SQL_INVALID_HANDLE | Error en la función debido a un entorno, conexión, instrucción o identificador de descriptor no válidos. Esto indica un error de programación. No hay información adicional disponible en SQLGetDiagRec o SQLGetDiagField. Este código solo se devuelve cuando el identificador es un puntero nulo o es el tipo incorrecto, como cuando se pasa un identificador de instrucción para un argumento que requiere un identificador de conexión. |
| SQL_NO_DATA | No había más datos disponibles. La aplicación llama a SQLGetDiagRec o SQLGetDiagField para recuperar información adicional. Se pueden devolver uno o más registros de estado definidos por el controlador en la clase 02xxx. Nota: En ODBC 2. x, este código de retorno se denominaba SQL_NO_DATA_FOUND. |
| SQL_NEED_DATA | Se necesitan más datos, como cuando se envían datos de parámetros en tiempo de ejecución o se requiere información adicional de conexión. La aplicación llama a SQLGetDiagRec o SQLGetDiagField para recuperar información adicional, si existe. |
| SQL_SIGUE_EJECUTÁNDOSE | Una función que se inició de forma asincrónica sigue ejecutándose. La aplicación llama a SQLGetDiagRec o SQLGetDiagField para recuperar información adicional, si existe. |