Présentation
Documentation
L'équipe
Sérialisation
 
Programmes
Objets
Libs Utilitaires
Libs Internes
   
 
Editeur
Syntaxes
Windows
Versions
   

SCR/AL1 - TOME III. Les librairies utilitaires

25. Le groupe s_odbc

25.18 OBindCol (file s_odbc.c:650)

Syntax

OBindCol(OCSR *ocsr, int colnb, char *ptr)

Description

Détermine l'adresse à laquelle les fonctions ONext() et OPrevious() vont placer les valeurs des colonnes d'un dataset résultant de OQuery(). Ces valeurs sont également utilisées par les fonctions OWrite() et ORewrite().

Une valeur par défaut est fixée par la fonction OQuery().

L'appel suivant à OGetCol() fournira le nouveau pointeur.

Dans le cas de champs de longueur variable (p.ex. LONGVARTEXT), une valeur interne est conservée pour permettre une allocation à chaque lecture du buffer. OBindCol() est donc inutile dans ce cas.

Le pointeur ptr doit être statique ou alloué. Il ne faut pas utiliser une variable locale. De plus, pour les champs de texte, l'espace doit être suffisant (y compris un caractère nul en fin de string).

Valeur retournée

0 en cas de succès, -1 en cas d'erreur. La fonction OError() peut être appelée pour obtenir un message d'erreur complet.

Exemple

    static char szClientName[50];
OCSR *ocsr;

ocsr = OQuery(odsn, "SELECT * from client");
if(ocsr == 0) {
printf("Bind:%s\n", OError());
return(-1);
}
if(OBindCol(ocsr, 2, szClientName)) {
printf("Bind:%s\n", OError());
return(-1);
}
return(0);

Voir également

OQuery(), ONext(), OPrevious(), OGetCol()

Copyright © 1998-2015 Jean-Marc Paul and Bernard PAUL - Envoyez vos remarques ou commentaires à bernard@xon.be