Comment Relier 2 tables de données dans AppSheet?

illustration de bases de données reliées

Google AppSheet est un outil puissant pour le développement d’applications mobiles et web sans nécessiter de connaissances en programmation avancées. L’une des fonctionnalités clés de Google AppSheet est l’utilisation des colonnes de type Ref, qui permettent de créer des relations entre les différentes tables de données.

Dans cet article, nous allons explorer comment utiliser efficacement les colonnes de type Ref dans Google AppSheet, en mettant l’accent sur les meilleures pratiques et les astuces pour tirer le meilleur parti de cette fonctionnalité.

Avant de plonger dans l’utilisation des colonnes de type Ref, il est essentiel de comprendre les relations de données. Dans une base de données, les relations sont établies entre les tables à l’aide de clés primaires et de clés étrangères.

Une clé primaire est une valeur unique qui identifie de manière unique chaque enregistrement dans une table. Une clé étrangère en revanche est une valeur qui fait référence à une clé primaire d’une autre table.

Dans Google AppSheet, les colonnes de type Ref sont utilisées pour créer ces relations entre les tables. Une colonne de type Ref stocke la valeur d’une clé primaire d’une autre table. Cela permet d’établir une relation entre les enregistrements des différentes tables.

Configuration d'une colonne Ref dans Google AppSheet

Pour utiliser les colonnes de type Ref, vous devez configurer les relations de données appropriées entre les tables.

Pour cela, créez les tables nécessaires avec leurs colonnes correspondantes. Ensuite, définissez les clés primaires pour chaque table. Les clés primaires devraient être des valeurs uniques et significatives.

Une fois que les tables de données ainsi que les clés primaires sont configurées, vous pouvez ajouter des colonnes de type Ref pour établir les relations. Dans une table, sélectionnez la colonne appropriée, puis définissez le type de colonne comme « Ref ». Spécifiez ensuite la table de référence et la colonne de référence correspondante.

Prenons l’exemple d’une application sur le thème du cinéma. Notre application comporte 3 tables de données:

  •  « Acteurs » avec les colonnes ID, Nom, Prénom et Production
  •  « Productions » contenant les information de chaque maison de production avec les colonnes ID, Production, Pays ainsi que CA (Millions $/an)
  • « Films », dans la quelle on trouve les colonnes ID, Production et Film.

Dans les 3 tables ci-dessus, la colonne ID qui est la clé primaire a été paramétrée avec l’expression UNIQUEID(). Cela permet d’identifier les lignes de chaque tableau à l’aide de l’ID.

Si dans la table Acteurs nous souhaitons afficher des données relatives à chaque maison de production, nous allons configurer la colonne Production de la manière suivante:

configuration d'une table Ref dans AppSheet

Tout d’abord, il faut choisir le type « Ref » dans la liste déroulante.

Ensuite, dans « Source table », nous définirons le nom de la table cible dans laquelle nous souhaitons récupérer les informations. A ce stade, la colonne Ref est comme une porte qui vous permet de naviguer entre 2 pièces.

Récupération des données à l'aide d'une clé étrangère

Maintenant, si nous affichons la vue Acteurs, nous voyons qu’AppSheet a ajouté une flèche à côté de l’entrée « Gaumont » dans la colonne « Production ». Cette flèche symbolise notre porte. En cliquant dessus, nous basculons dans la table Productions.

flèche pour colonne ref
informations de la table cible

En parallèle, AppSheet a automatiquement crée dans la table cible une colonne virtuelle appelée « Related Acteurs », de type List, avec comme formule:

expression ref_rows

Et dans la vue détaillée de la table Productions qu’on a vue précédemment, AppSheet a ajouté une table correspondant à la liste Related Acteurs. En d’autres termes, AppSheet a automatiquement mis en place dans la table cible, un lien vers la table source.

tableau référence inversée

En conclusion, comme vous avez pu le voir dans cet article, les colonnes de type Ref sont des outils puissants pour créer des relations entre les tables dans Google AppSheet. En comprenant les relations de données et en configurant correctement les colonnes de type Ref, vous pourrez tirer parti de cette fonctionnalité pour créer des applications plus robustes et interconnectées.

FAQ - Liaison de tables de données

Le lien entre deux tables s’effectue grâce au type de colonne « Ref » (pour Référence). Cette fonctionnalité permet d’indiquer à AppSheet qu’une colonne d’une table « A » pointe vers une ligne spécifique d’une table « B ».

Pour créer le lien, vous devez :

  1. Aller dans l’onglet Data > Columns.

  2. Sélectionner la colonne que vous souhaitez transformer en lien.

  3. Modifier son type en choisissant « Ref » dans la liste déroulante.

  4. Dans les paramètres de la colonne, choisir la « Source table » (la table cible vers laquelle vous voulez pointer).

La clé primaire (souvent une colonne ID) est l’identifiant unique de chaque ligne. Lorsque vous créez une relation entre deux tables, la colonne de type « Ref » va stocker la valeur de la clé primaire de la table de destination pour assurer une liaison précise.

Oui, absolument. Vous pouvez multiplier les colonnes de type « Ref » pour créer des écosystèmes complexes.

Vérifiez que :

  • La colonne définie comme « Label » dans la table de destination est bien celle que vous voulez voir apparaître (par exemple, le nom de la production plutôt que son code ID).

  • Les colonnes de type « ID » ne contiennent pas de doublons.

  • Vous avez bien enregistré vos modifications dans l’éditeur AppSheet.

➡️ Retrouvez tous nos articles dans la catégorie AppSheet ⬅️