Une base de données modélise des entités réelles, comme des professeurs ou des universités, en les stockant dans des tables. Chaque table contient les données d’un seul type d’entité. Cela réduit la redondance en ne stockant chaque entité qu’une seule fois. Par exemple, il ne doit y avoir qu’une seule ligne contenant les informations d’une entreprise donnée. Enfin, une base de données permet aussi de modéliser les relations entre les entités.
SQL signifie Structured Query Language. Il s’agit d’un langage informatique conçu pour stocker, manipuler et interroger des données dans une base de données relationnelle.
SQL est le langage standard des systèmes de bases de données relationnelles. Tous les Systèmes de gestion de bases de données relationnelles (SGBDR) comme MySQL, MS Access, Oracle, Sybase, Informix, Postgres et SQL Server utilisent SQL comme langage de base de données de référence.
Base de données PostgreSQL
information_schema est une méta‑base qui contient des informations sur votre base de données actuelle. Elle n’est pas propre à PostgreSQL et existe aussi dans d’autres systèmes de gestion de bases de données comme MySQL ou SQL Server. information_schema comporte plusieurs tables que vous pouvez interroger avec la syntaxe bien connue SELECT * FROM :
tables : informations sur toutes les tables de votre base de données actuelle
columns : informations sur toutes les colonnes de toutes les tables de votre base de données actuelle
SELECT table_schema, table_name
FROM information_schema.tables;Propulsé par
CREATE : crée une nouvelle table ou une vue de table.
ALTER : modifie une table existante.
DROP : supprime une table entière ou d’autres objets de la base.
Data Manipulation Language (DML)
SELECT : extrait certains enregistrements d’une ou plusieurs tables.
INSERT : ajoute un enregistrement dans une table existante.
UPDATE : modifie un enregistrement existant de la table.
DELETE : supprime des enregistrements d’une table, voire la table entière.
Afficher les colonnes d’une table donnée
information_schema contient aussi des informations sur les colonnes dans la table « columns ». Une fois que vous connaissez le nom d’une table, vous pouvez interroger ses colonnes en consultant la table « columns ».
SELECT table_name, column_name, data_type
FROM information_schema.columnsWHERE table_name ='pg_config';
table_name | column_name | data_type
-----------+-------------+-----------
pg_config | name |text
pg_config | setting |textPropulsé par
Ici, vous voyez que la table système pg_config ne comporte que deux colonnes — vraisemblablement pour stocker des paires clé‑valeur.
Exemple interactif
Dans cet exercice, vous n’aurez besoin que des informations du schéma "public", qui apparaît dans la colonne table_schema des tables tables et columns. Le schéma "public" contient les informations relatives aux tables et bases définies par les utilisateurs. Les autres types de table_schema contiennent des informations système — ici, nous nous intéressons uniquement aux objets définis par les utilisateurs.
Vous allez récupérer les noms de toutes les tables de la base de données actuelle en limitant votre requête au table_schema"public".
## Interroger la bonne table dans information_schema
SELECT table_name
FROM information_schema.tables
## Spécifier la valeur correcte de table_schema
WHERE table_schema ='public';Propulsé par
Lorsque nous exécutons le code ci‑dessus, il produit le résultat suivant :
Apprenez l'essentiel de l'architecture d'un entrepôt de données, des composants clés aux meilleures pratiques, pour construire un système de données évolutif et efficace !
Initiez-vous aux structures de données de Python : apprenez-en plus sur les types de données et les structures de données primitives et non primitives, telles que les chaînes de caractères, les listes, les piles, etc.
Tutoriel complet d'introduction aux boucles Python. Apprenez et pratiquez les boucles while et for, les boucles imbriquées, les mots-clés break et continue, la fonction range et bien plus encore.
Débloquez tout le potentiel de vos données grâce à des requêtes SQL avancées et préparez des jeux de données robustes avec PostgreSQL pour la data science.
Une base de données modélise des entités réelles, comme des professeurs ou des universités, en les stockant dans des tables. Chaque table contient les données d’un seul type d’entité. Cela réduit la redondance en ne stockant chaque entité qu’une seule fois. Par exemple, il ne doit y avoir qu’une seule ligne contenant les informations d’une entreprise donnée. Enfin, une base de données permet aussi de modéliser les relations entre les entités.
SQL signifie Structured Query Language. Il s’agit d’un langage informatique conçu pour stocker, manipuler et interroger des données dans une base de données relationnelle.
SQL est le langage standard des systèmes de bases de données relationnelles. Tous les Systèmes de gestion de bases de données relationnelles (SGBDR) comme MySQL, MS Access, Oracle, Sybase, Informix, Postgres et SQL Server utilisent SQL comme langage de base de données de référence.
Base de données PostgreSQL
information_schemaest une méta‑base qui contient des informations sur votre base de données actuelle. Elle n’est pas propre à PostgreSQL et existe aussi dans d’autres systèmes de gestion de bases de données comme MySQL ou SQL Server.information_schemacomporte plusieurs tables que vous pouvez interroger avec la syntaxe bien connueSELECT * FROM:Commandes en SQL
Data Definition Language (DDL)
Data Manipulation Language (DML)
Afficher les colonnes d’une table donnée
information_schemacontient aussi des informations sur les colonnes dans la table « columns ». Une fois que vous connaissez le nom d’une table, vous pouvez interroger ses colonnes en consultant la table « columns ».Ici, vous voyez que la table système
pg_configne comporte que deux colonnes — vraisemblablement pour stocker des paires clé‑valeur.Exemple interactif
Dans cet exercice, vous n’aurez besoin que des informations du schéma
"public", qui apparaît dans la colonnetable_schemades tablestablesetcolumns. Le schéma"public"contient les informations relatives aux tables et bases définies par les utilisateurs. Les autres types detable_schemacontiennent des informations système — ici, nous nous intéressons uniquement aux objets définis par les utilisateurs.Vous allez récupérer les noms de toutes les tables de la base de données actuelle en limitant votre requête au
table_schema"public".Lorsque nous exécutons le code ci‑dessus, il produit le résultat suivant :
Essayez par vous‑même.
Pour en savoir plus sur les bases de données relationnelles en SQL, regardez cette vidéo issue de notre cours Introduction to Relational Databases in SQL.
Ce contenu est extrait du cours Introduction to Relational Databases in SQL de Timo Grossenbacher, proposé par DataCamp.
Consultez aussi notre tutoriel Introduction à l’indexation en SQL.