SQLDBC_Retcode SQLDBC::Statement::bindColumn(const SQLDBC_UInt4 Index, const SQLDBC_HostType Type, void *paramAddr, SQLDBC_Length *LengthIndicator,
const SQLDBC_Length Size, const SQLDBC_Bool Terminate=SQLDBC_TRUE);
Le type natif du résultat est donné par Type.
La taille maximale d'une valeur d'un résultat est donnée par Size.
La valeur du résultat est récupérée par l'adresse paramAddr et son indicateur ou sa taille par lengthIndicator.
Les valeurs possibles de Type sont les suivantes :
unsigned char
.unsigned short
.long
.double
.unsigned char *
.char *
.wchar_t *
.char *
représentant une date.Les valeurs possibles de StrLen_or_IndPtr sont les suivantes :
Le résultat est SQLDBC_OK en cas de succès.
#include <SQLDBC.h>
static SQLDBC_Statement *hOrdreSql;
static long E;
static SQLINTEGER IndicateurE;
static long TableE[256];
static SQLINTEGER IndicateurTableE[256];
static char C[20];
static SQLINTEGER IndicateurC;
static char TableC[256][20];
static SQLINTEGER IndicateurTableC[256];
...
/* Resultat unitaire. */
if (hOrdreSql->bindColumn(1, SQLDBC_HOSTTYPE_INT4, (SQLPOINTER)&E, &IndicateurE, sizeof(long))!=SQLDBC_OK)
{
...
}
...
/* Resultat en tableau. */
if (hOrdreSql->bindColumn(2, SQLDBC_HOSTTYPE_INT4, (void *)TableE, TableIndicateurE, sizeof(long)*256)!=SQLDBC_OK)
{
...
}
...
/* Resultat unitaire. */
if (hOrdreSql->bindColumn(1, SQLDBC_HOSTTYPE_ASCII, (void *)&C, &IndicateurC, sizeof(char)*20)!=SQLDBC_OK)
{
...
}
...
/* Resultat en tableau. */
if (hOrdreSql->bindColumn(2, SQLDBC_HOSTTYPE_ASCII, (void *)TableC, TableIndicateurC, sizeof(char)*20)!=SQLDBC_OK)
{
...
}
...