| 12
 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;
} | 
Partager