my_bool mysql_stmt_bind_param(MYSQL_STMT *stmt, MYSQL_BIND *bnd);
Le résultat est différent de 0 en cas de succès.
Voici la description de la structure MYSQL_BIND :
enum enum_field_types buffer_type;char où seul le bit de poids faible est utilisé.char.short.long.double.unsigned char *.char *.MYSQL_TIME *.my_bool is_unsigned;void *buffer;unsigned long buffer_length;unsigned long length_value;unsigned long *length;my_bool is_null_value;my_bool *is_null;my_bool *error;
#include <mysql.h>
static MYSQL_STMT *hOrdreSql;
static MYSQL_BIND LiaisonE;
static long E;
static unsigned long TailleE;
static my_bool IndicateurE;
static MYSQL_BIND LiaisonC;
static char C[20];
static unsigned long TailleC;
static my_bool IndicateurC;
...
memset(&LiaisonE, 0, sizeof(MYSQL_BIND));
LiaisonE.buffer_type=MYSQL_TYPE_LONG;
LiaisonE.is_unsigned=0;
LiaisonE.buffer=(void *)&E;
LiaisonE.buffer_length=sizeof(long);
LiaisonE.length_value=sizeof(long);
LiaisonE.length=&TailleE;
LiaisonE.is_null_value=0;
LiaisonE.is_null=&IndicateurE;
if (mysql_stmt_bind_param(hOrdreSql, &LiaisonE))
{
...
}
...
memset(&LiaisonC, 0, sizeof(MYSQL_BIND));
LiaisonC.buffer_type=MYSQL_TYPE_STRING;
LiaisonC.is_unsigned=0;
LiaisonC.buffer=(void *)C;
LiaisonC.buffer_length=sizeof(char)*20;
LiaisonC.length_value=strlen(C);
LiaisonC.length=&TailleC;
LiaisonC.is_null_value=0;
LiaisonC.is_null=&IndicateurE;
if (mysql_stmt_bind_param(hOrdreSql, &LiaisonC))
{
...
}
...