SQL ET POSTGRE 3.2 : Les tables dans les bases de données
Dans cette vidéo, nous abordons les tables, l'objet central de toute base de données relationnelle. Une table est composée de colonnes (parfois appelées champs) et de lignes de données. Chaque colonne possède un type défini — par exemple numérique (INT) ou texte (VARCHAR) — qui contraint les valeurs autorisées : une colonne d'âges ne peut donc pas contenir de mots ou de dates. Deux règles fondamentales : chaque ligne doit être unique, et chaque champ ne doit contenir qu'une seule donnée (pas plusieurs adresses email dans la même cellule, par exemple).
Une table d'exemple
Prenons une table contenant des informations sur des personnes habitant en France. Elle a cinq colonnes : id, prenom, nom, ville et departement. Sous chaque nom de colonne, le type de données est précisé. Ici id est de type INTEGER, ce qui veut dire que ses valeurs sont des nombres entiers (1, 2, 3, 4…). Les colonnes prenom, nom et ville sont en VARCHAR (caractères variables), donc elles n'acceptent que des chaînes de caractères comme « Julien Brown ».
La colonne id joue un rôle particulier : c'est la clé primaire de la table. Une clé primaire identifie chaque ligne de manière unique. Grâce aux valeurs successives 1, 2, 3, etc., on peut désigner sans ambiguïté un enregistrement précis : par exemple Julien Brown habitant Nantes en Loire-Atlantique correspond à l'id 1. Nous reviendrons sur les clés primaires plus en détail dans la prochaine vidéo.
Dans une base de données relationnelle, on retrouve plusieurs tables reliées entre elles par des relations. Ces relations s'expriment via les clés primaires et les clés étrangères. C'est précisément ce qui rend les bases relationnelles si puissantes : elles permettent de modéliser des informations complexes en évitant la redondance. Avant d'attaquer les clés, la prochaine étape consiste à explorer en détail les types de données disponibles dans PostgreSQL.
En résumé
Cette leçon introduit la structure fondamentale des tables dans les bases de données : elles sont composées de colonnes (champs) et de lignes. Chaque colonne possède un type de données défini qui détermine le format des valeurs acceptées (entier, varchar pour chaînes de caractères). L'exemple présenté montre une table de personnes françaises avec des colonnes ID, Prénom, Nom, Ville et Département, illustrant comment chaque ligne doit être unique et chaque champ ne contenir qu'une donnée. Le concept fondamental de clé primaire est introduit : c'est une colonne qui identifie de manière unique chaque ligne de la table.
Points clés
- Les tables sont la structure de base des bases de données, composées de colonnes (champs) et de lignes de données
- Chaque colonne possède un type de données défini qui détermine le format des valeurs qu'elle peut contenir (entier, varchar, etc.)
- Chaque ligne doit être unique et chaque champ ne doit contenir qu'une seule donnée pour assurer l'intégrité des données
- La clé primaire est une colonne spéciale qui identifie de manière unique chaque ligne de la table
- Les tables relationnelles peuvent être reliées ensemble via les clés primaires et clés étrangères pour créer des relations puissantes
- Les types de données courants incluent les entiers (integer) pour les nombres et les varchar (chaînes de caractères) pour le texte
Questions fréquentes
Qu'est-ce qu'un type de données dans une colonne ?
C'est le format qu'une colonne accepte. Par exemple, une colonne de type entier ne peut contenir que des nombres, tandis qu'une colonne de type varchar accepte des chaînes de caractères. Cela garantit la cohérence des données stockées.
Pourquoi chaque ligne doit-elle être unique dans une table ?
Pour éviter les doublons et assurer l'intégrité des données. La clé primaire garantit cette unicité en identifiant de manière unique chaque ligne, permettant de les distinguer et de les référencer correctement.
Qu'est-ce qu'une clé primaire ?
C'est une colonne spéciale qui identifie de manière unique chaque ligne de la table. Par exemple, une colonne ID avec des valeurs 1, 2, 3, 4, 5 sert de clé primaire pour identifier chaque enregistrement de personne dans la table.