Guide du processus de conception de base de données
Sur le service QuintaDB, les données sont stockées dans des tables. Les tables sont remplies via des formulaires[1]. En prenant comme exemple le tableau des commandes d'un magasin d'électroménager, nous examinerons l'erreur la plus courante lors de la création d'une base de données. Supposons que nous ayons pour tâche de créer un tableau permettant aux gestionnaires de saisir les données et les commandes des clients. Pour une base de données simple, une seule table peut suffire, mais pour la plupart des bases de données, vous aurez besoin de plusieurs tables.
Prenons le premier cas. Créons un formulaire de commandes et essayons de travailler avec une seule table.
Nous énumérons ici certains des problèmes les plus courants auxquels vous pouvez être confronté:
Étape 1. Créez le formulaire Catalogue de produits et ajoutez les champs suivants: Catégorie, Nom, Modèle, Code produit, Statut, Prix.
Étape 2. Remplissez le tableau avec les informations sur le produit ou importez des données[2] .
Étape 3. Créez un formulaire Clients, qui contiendra des champs pour renseigner les données client (Nom, Adresse, Téléphone, etc.). À cette étape, il n'est pas nécessaire de remplir le tableau avec les clients, mais si vous disposez déjà d'une base de données prête à l'emploi, vous pouvez le faire tout de suite.
Étape 4. Pour passer une commande client, vous devez créer un troisième formulaire: le formulaire de commande.
Vous devez lier ce formulaire à la table Catalogue de produits à l'aide du champ Relation[3]. Ce champ permettra de lier les données de plusieurs tables au sein de votre application (pour plus d'informations sur les relations entre les tables, lisez cet article).
Nous vous recommandons d'utiliser la colonne contenant des valeurs uniques pour la relation. La colonne Code produit de la table Catalogue de produits est un bon choix, car le code n'est jamais répété.
Sélectionnez le type de relation Plusieurs-à-un et le type d’affichage Liste déroulante ou Sélection multiple avec saisie semi-automatique. Désormais, lorsque vous sélectionnez un code produit sur le bon de commande, le système détecte automatiquement : le nom du produit, le modèle, le statut et le prix unitaire. Ces colonnes (Nom, Modèle, Prix) peuvent être affichées dans le tableau actuel à l'aide de colonnes liées[4] champs.
Étape 5. Add a numeric field Quantity and the Total formula[5] to the form.
Using the formula Price * Quantity, we will calculate the total amount of the order.
Étape 6. Créez le formulaire final - Ventes. À l'aide du champ Relation - Client, nous allons lier les tables Ventes et Clients. Type de relation - Plusieurs-à-un.
Étape 7. Ajoutez le formulaire de commande en tant que champ de sous-formulaire[6]. Pour résumer les valeurs de la colonne Total, ajoutez le montant à payer de la colonne liée au formulaire. (Suivez ce lien pour en savoir plus sur la façon dont le montant est calculé par champ de sous-formulaire).
Étape 8. Remplissez le formulaire. Sélectionnez le client dans le tableau lié ou ajoutez-en un nouveau à l'aide du champ Relation. Les commandes du client sont saisies dans le sous-formulaire Commande.
En conséquence, nous obtenons une table plus compacte, sans avoir à dupliquer manuellement les données à chaque fois. De plus, si vous mettez à jour les valeurs d'une table, toutes les modifications seront également affichées dans les tables associées. C'est ce qu'on appelle une base de données relationnelle.
Dans le prochain article, vous apprendrez comment diviser les autorisations dans la base de données à l’aide de rapports.
Liens utiles:
2. Comment importer des fichiers Excel et CSV dans une base de données en ligne
3. Comment créer des relations entre les tables
6. Sous-formulaire (type de champ)
Nouveautés dans QuintaDB : commentaires d'enregistrement, événements de calendrier récurrents et plus encore
La bonne méthode. « Diviser pour mieux régner »: filtrer et sélectionner les données, configurer les autorisations des utilisateurs pour le tableau
Fonctions et scripts (champ Formule)