1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
void ajouterRecette () {
char * description;
char * type;
exec sql begin declare section;
CS_CHAR sqlDescription[80];
CS_CHAR sqlType[2];
CS_SMALLINT nb;
exec sql end declare section;
description = lireDescription();
if (description == NULL) return;
type = lireType();
if (type == NULL) return;
strcpy(sqlDescription, description);
strcpy(sqlType, type);
exec sql INSERT INTO Recette VALUES (:sqlDescription, :sqlType);
exec sql commit;
}
char * lireDescription () {
char description[80];
printf("Description de la recette : ");
if (fgets(description, 80, stdin) == NULL) {
printf("Erreur lors de la lecture de la description\n");
return NULL;
}
fflush(stdin);
return description;
}
char * lireType () {
char type[2];
printf("Type de la recette ('e', 'p', 'd') : ");
if (fgets(type, 2, stdin) == NULL) {
printf("Erreur lors de la lecture du type\n");
return NULL;
}
fflush(stdin);
type[0] = toupper(type[0]);
if (type[0] != 'E' && type[0] != 'P' && type[0] != 'D') {
printf("Erreur : type de recette invalide\n");
return NULL;
}
type[1] = '\0';
return type;
} |