Bonjour,
Créer une base de données suppose réfléchir d'abord à sa structure, c'est à dire quelles informations on va enregistrer et comment on va les mettre en relation entre elles. Ensuite, il y aura la façon de les enregistrer ou de les consulter avec des formulaires.
La structure va se traduite en tables, par exemple :
- une table recettes qui aurait un champ nom de la recette et forcément un numéro unique (ou un code) qui constitue la clé primaire, et peut être d'autres champs : type de recette, facile ou pas, cher ou pas, durée préparation, etc
- une table ingrédients dans laquelle là aussi un nouveau numéro unique par ligne (la clé primaire) puis un champ indiquant le numéro de la recette concernée, puis le nom de l'ingrédient, puis la quantité, etc
Là, il y a une relation "un à plusieurs" entre les 2 tables : à une recette de la première table correspond plusieurs lignes de la table ingrédients (une par ingrédient)
Mais si on réfléchit un peu plus, on voit qu'un ingrédient va revenir dans de multiples recettes et l'objectif est de ne pas répéter des informations pour être plus efficace. Ainsi, une 3e table pourrait être "listeIngredients" dans laquelle on mettrait tous les ingrédients connus (avec un numéro, la clé !), si bien que dans la 2e table on ne saisirait plus le nom de l'ingrédient mais simplement son numéro dans la 3e table…
Ensuite, il sera toujours possible, avec des requêtes, de faire des recherches sur n'importe quelle information pourvu qu'elle existe : ingrédient, nom de la recette, type, etc
LibreOffice 24.2.5.2 sur Ubuntu 24.04 GNOME (version officielle). Base en frontale d'une base MySQL ; échec liaison directe => liaison JDBC.