4D v16

ODBC_SQLGetDiagRec

Inicio

 
4D v16
ODBC_SQLGetDiagRec

ODBC_SQLGetDiagRec 


 

ODBC_SQLGetDiagRec ( handleType ; handleID ; recNb ; sqlState ; nativeError ; messageText ; longitudTexto ) -> Resultado 
Parámetro Tipo   Descripción
handleType  Entero largo in Type of ID to pass to handleID
handleID  Entero largo in Handle ID for the diagnostic data structure
recNb  Entero largo in Indicates the status record from which information is sought. Status records are numbered from 1
sqlState  Cadena in Five-character SQLSTATE code pertaining to the diagnostic record recNb
nativeError  Entero largo in Native error code, specific to the data source
messageText  Texto in Diagnostic message text string
longitudTexto  Entero largo in Length of the string returned in messageText
Resultado  Entero largo in Returns the result of the MS ODBC API function SQLGetDiagRec

The ODBC_SQLGetDiagRec command returns the current values of multiple fields of a diagnostic record that contains error, warning, and status information. Call this command any time one of the other 4D ODBC PRO commands does not return SQL_SUCCESS.

handleType defines the type of ID to pass to handleID, which can be one of the following:

ConstantDescription
SQL_HANDLE_ENVEnvironment ID
SQL_HANDLE_DBCConnection ID
SQL_HANDLE_STMTStatement ID
SQL_HANDLE_DESCDescriptor ID

handleID is a handle ID for the diagnostic data structure, of the type indicated by handleType. If handleType is SQL_HANDLE_ENV, this parameter is taken into account and the constant SQL_DEFAULT_ID can be then used.

handleID is the connectionID if handleType is equal to SQL_HANDLE_DBC. connectionID is a valid connection ID returned by ODBC_SQLAllocConnect and a connection must be established using the ODBC_SQLConnect command.

Otherwise, handleID is the stmtID, which is a valid statement ID returned by ODBC_SQLAllocStmt.

recNb indicates the status record from which information is sought. Status records are numbered from 1.

sqlState is the five-character SQLSTATE code pertaining to recNb. The first two characters indicate the class; the next three indicate the subclass. This value comes from the SQL_DIAG_SQLSTATE diagnostic field.

nativeError is the native error code specific to the data source, from the SQL_DIAG_NATIVE diagnostic field.

messageText is the diagnostic message text string, which comes from the SQL_DIAG_MESSAGE_TEXT field.

For more information, please see the SQLGetDiagRec function in the MS ODBC API Reference at http://msdn.microsoft.com/en-us/library/ms716256(VS.85).aspx.

SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR, or SQL_INVALID_HANDLE.

Ejemplo  

The following method is called after the result from calling ODBC_SQLExecute is not equal to SQL_SUCCESS. The debugMessage variable will contain the error message:

 If($result#SQL_SUCCESS)
    $resultDiag:=ODBC_SQLGetDiagRec(SQL_HANDLE_STMT;$statementID;1;SQLState;nativeError;
    debugMessage;vTextLen)
 End if



Ver también 

ODBC_SetErrorHandler
ODBC_SQLGetDiagField

 
PROPIEDADES 

Producto: 4D
Tema: ODBC_Results
Número 16954

 
HISTORIA 

Creado por: 4D ODBC Pro 2004

 
ARTICLE USAGE

4D ODBC Pro ( 4D v16)