SQLDBC_Retcode SQLDBC::PreparedStatement::next(void);
Si les résultats sont liés par tableau, alors un paquet d'enregistrements est lu dont la taille est limitée par la taille des tableaux. La taille utilisée est retrouvée par l'appel à SQLDBC::PreparedStatement::getResultCount.
Le résultat est SQLDBC_OK en cas de succès et tant qu'il reste un enregistrement.
static SQLDBC_Statement *hOrdreSql;
static SQLDBC_PreparedStatement *hOrdreSql2;
static long E;
static SQLINTEGER IndicateurE;
static char TableC[256][20];
static SQLINTEGER IndicateurTableC[256];
static SQLINTEGER NbEnregistrements;
...
/* Resultat unitaire. */
if (hOrdreSql->bindColumn(1, SQLDBC_HOSTTYPE_INT4, (SQLPOINTER)&E, &IndicateurE, sizeof(long))!=SQLDBC_OK)
{
...
}
...
if (hOrdreSql->execute("select empno from emp where ename='SCOTT';")!=SQLDBC_OK)
{
...
}
...
if (hOrdreSql->next()!=SQDBC_OK)
{
...
}
...
/* Resultat en tableau. */
if (hOrdreSql->bindColumn(1, SQLDBC_HOSTTYPE_ASCII, (void *)TableC, TableIndicateurC, sizeof(char)*20)!=SQLDBC_OK)
{
...
}
...
hOrdreSql2->setResultSetFetchSize(256);
...
if (hOrdreSql->execute()!=SQLDBC_OK)
{
...
}
...
if (hOrdreSql2->next()!=SQLDBC_OK)
{
...
}
...
NbEnregistrements=hOrdreSql2->getResultCount();
...