Postgres, également connu sous le nom de PostgreSQL, est la pierre angulaire de la gestion des bases de données relationnelles par objet. Avec des décennies de travail consacrées à son développement, Postgres est une base de données fiable, flexible et très performante.

Ce guide pratique explique comment créer des bases de données et des tables et comment supprimer des bases de données dans Postgres. De plus, il montre comment accomplir les mêmes tâches à l’aide d’un outil d’administration de base de données tel que Adminer.

Démarrer avec Postgres

Pour commencer, assurez-vous que Postgres est installé sur ton système. Si ce n’est pas le cas, téléchargez le fichier nécessaire et suivez les instructions d’installation.

Gardez à l’esprit que les commandes présentées ici le sont sur macOS, mais qu’elles fonctionneront sans problème sur n’importe quel système d’exploitation.

Une fois Postgres installé, saisissez cette commande dans votre terminal pour vérifier que tout fonctionne correctement :

postgres -V

Cette commande devrait vous renvoyer le numéro de version de votre installation Postgres :

Le numéro de version de Postgres.
Le numéro de version de Postgres.

Comment se connecter au serveur de base de données PostgreSQL ?

Vous avez donc installé Postgres sur votre système et vous êtes prêt à créer des bases de données. Mais comment accéder à votre base de données ? C’est là qu’intervient le terminal interactif Postgres, communément appelé psql. Psql est une interface de terminal pour Postgres qui vous permet d’envoyer des requêtes à Postgres et d’en afficher les résultats.

Lors de l’installation, Postgres crée un superutilisateur par défaut sur votre système d’exploitation (OS) qui dispose d’un accès ultime à la base de données. Vous pouvez vous connecter au terminal psql en tant que superutilisateur par défaut à l’aide de cette commande :

psql postgres

Après avoir exécuté cette commande, vous devriez voir votre terminal devenir postgres=#, ce qui indique que vous êtes connecté en tant que superutilisateur par défaut.

Les méta-commandes constituent l’un des principaux avantages de l’utilisation de psql. Ces outils puissants vous permettent d’effectuer des tâches d’administration de bases de données, telles que la connexion à des bases de données ou l’affichage de tables, sans connaître les commandes SQL exactes.

Pour utiliser une méta-commande dans psql, commencez par une barre oblique inverse (\) suivie de la commande. Voici quelques exemples :

  • \c <database-name> – Vous connecte à une base de données spécifique.
  • \l – Liste toutes les bases de données sur le serveur.
  • \dt – Affiche toutes les tables d’une base de données.

Comment créer des bases de données Postgres

Lorsque l’on travaille avec des bases de données, il est bon de suivre le principe du moindre privilège en créant un nouvel utilisateur doté d’autorisations spécifiques. Cependant, pour simplifier ce guide, nous allons créer et gérer les bases de données à l’aide du super-utilisateur par défaut.

Tout d’abord, exécutez la méta-commande suivante pour lister tous les utilisateurs sur votre serveur Postgres :

\du

Si vous n’avez pas ajouté de nouveaux utilisateurs, vous ne devriez voir que le super-utilisateur par défaut :

Utilisateurs sur le serveur Postgres local.
Utilisateurs sur le serveur Postgres local.

Le super-utilisateur par défaut peut apparaître sous la forme du nom d’utilisateur de Postgres ou de votre système d’exploitation, en fonction de la configuration de votre système.

Par défaut, le super-utilisateur n’a pas de mot de passe. Cependant, pour l’administration ultérieure de la base de données, définissez un mot de passe à l’aide de cette commande :

\password <superuser-name>

Saisissez votre mot de passe lorsqu’on vous le demande et confirmez-le. Vous êtes maintenant prêt à créer des bases de données sur votre serveur Postgres. La syntaxe pour créer une base de données est la suivante : CREATE DATABASE <database-name>.

Commençons par créer une base de données nommée sales:

CREATE DATABASE sales;

Ce qui suit apparaît après la création réussie de la base de données :

Création d'une base de données Postgres.
Création d’une base de données Postgres.

Maintenant, créez deux autres bases de données, customers et employees, avec ces commandes :

CREATE DATABASE customers;
CREATE DATABASE employees;

Vous avez maintenant créé trois bases de données sur votre serveur Postgres local. Pour lister toutes les bases de données que vous avez créées, utilisez cette méta-commande :

\l
Bases de données sur le serveur Postgres local.
Bases de données sur le serveur Postgres local.

Voici les trois bases de données que vous avez créées jusqu’à présent ! Vous pouvez ignorer les autres bases de données de l’image, car elles sont fournies par défaut avec l’installation de Postgres.

Maintenant, vous pouvez vous connecter à une base de données particulière. La méta-commande pour se connecter à n’importe quelle base de données est \c <database-name>.

Exécutez la commande suivante pour vous connecter à la base de données sales:

\c sales

Le message suivant devrait s’afficher dans ton terminal :

Connexion à une base de données.
Connexion à une base de données.

Une fois connecté à une base de données, vous pouvez facilement passer à une autre base de données sur le serveur avec la même commande. Ainsi, à partir de la base de données sales, vous pouvez exécuter la commande suivante pour vous connecter à la base de données customers:

\c customers

Créer des tables

Pour commencer, vous devez créer des tables pour alimenter votre base de données en données. La syntaxe de création d’une table dans Postgres suit cette structure :

CREATE TABLE <table-name> (
<column1-name> <column1-datatype> <column1-constraint>,
<column2-name> <column2-datatype> <column2-constraint>,
<column3-name> <column3-datatype> <column3-constraint>,
…
…
<columnN-name> <columnN-datatype> <columnN-constraint>
);

Commencez par vous connecter à la base de données sales.

\c sales

Ensuite, créez la table products avec trois colonnes qui ne peuvent pas être nulles : product_id, product_name, et quantity_sold:

CREATE TABLE products(
   Product_id			INT     NOT NULL,
   Product_name		TEXT    NOT NULL,
   Quantity_sold		   INT     NOT NULL
);

Vous devriez voir la sortie suivante si l’opération est réussie :

Création de tables dans une base de données.
Création de tables dans une base de données.

Ensuite, utilisez la méta-commande ci-dessous pour vérifier que vous avez bien créé la table products:

\dt

Cette commande répertorie toutes les tables de votre base de données – dans ce cas, une table. Comme vous êtes connecté à la base de données sales, vous devriez obtenir le résultat suivant :

Tables de la base de données des ventes.
Tables de la base de données des ventes.

Créez ensuite deux tables dans la base de données employees. La première table répertoriera les salaires, et la seconde les adresses. Pour créer ces tables, exécutez les commandes ci-dessous :

\c employees

CREATE TABLE salary(
   Employee_id		INT     NOT NULL,
   Employee_name		TEXT    NOT NULL,
   Employee_salary		INT     NOT NULL
);

CREATE TABLE address(
   Employee_id		INT     NOT NULL,
   Employee_country		TEXT    NOT NULL,
   Employee_zipcode		INT     NOT NULL
);

Enfin, confirmez la création de ces tables en exécutant la méta-commande \dt. Voici le résultat que vous devriez obtenir :

Tables dans la base de données des employés.
Tables dans la base de données des employés.

Comment supprimer les bases de données Postgres

La suppression d’une base de données est aussi simple que sa création. La syntaxe pour supprimer une base de données est DROP DATABASE <database-name>;.

Vous n’avez pas besoin de vous connecter à une base de données particulière pour la supprimer. Ainsi, si vous voulez supprimer la base de données customers, vous pouvez exécuter cette commande à partir de n’importe quelle base de données à laquelle vous êtes connecté :

DROP DATABASE customers;

Vous devriez voir cet écran si la suppression est réussie :

Suppression d'une base de données Postgres.
Suppression d’une base de données Postgres.

Vous pouvez confirmer que la base de données customers n’existe plus en listant les bases de données sur votre serveur Postgres local à l’aide de la méta-commande \l.

Liste des bases de données sur le serveur Postgres local.
Liste des bases de données sur le serveur Postgres local.

Gestion des opérations sur les bases de données Postgres avec Adminer

À ce stade, vous avez appris les principes fondamentaux de Postgres en créant des bases de données, des tables et en supprimant des bases de données à l’aide de la ligne de commande.

Cependant, la ligne de commande peut être intimidante ou fastidieuse à utiliser. C’est là qu’un outil d’administration de base de données comme Adminer peut vous aider. Adminer vous permet d’effectuer toutes les opérations de base de données susmentionnées à l’aide d’une interface graphique. Bien que vous puissiez utiliser Adminer indépendamment, c’est aussi un composant standard de DevKinsta.

Vous devrez également télécharger le fichier PHP Adminer pour gérer votre base de données avec Adminer. Ouvrez votre terminal une fois pour démarrer le serveur web intégré qui exécute les fichiers PHP, et naviguez jusqu’à l’endroit où vous avez placé le fichier PHP Adminer:

cd path/to/Adminer php file 

Ensuite, démarrez le serveur web à l’aide de la commande suivante :

php -S 127.0.0.1:8000

Vous êtes prêt à utiliser l’interface utilisateur d’Adminer sur votre navigateur web. Saisissez l’adresse suivante dans votre navigateur web : http://localhost:8000/<votre-fichier-Adminer.php>.

.

Tu devriez voir l’interface utilisateur (UI) d’Adminer dans votre navigateur web :

Page d'accueil de l'UI Adminer.
Page d’accueil de l’UI Adminer.

Pour entrer dans votre serveur Postgres local, suivez les instructions ci-dessous tout en remplissant les champs de cette page :

  1. Sélectionnez PostgreSQL dans le champ Système.
  2. Le serveur devrait être pré-rempli sur localhost.
  3. Dans le champ Nom d’utilisateur, saisissez le nom du super-utilisateur, soit « postgres », soit le nom d’utilisateur du système d’exploitation de votre ordinateur.
  4. Dans le champ Mot de passe, saisissez le mot de passe défini pour le super-utilisateur dans la section « Créer des bases de données ».
  5. Laissez le champ Base de données vide.

Si l’authentification est réussie, vous verrez la liste de toutes les bases de données que vous avez créées précédemment, comme indiqué ci-dessous. Si vous travaillez sous Windows, vous pouvez rencontrer une erreur qui dit : « Aucune des extensions PHP prises en charge (PgSQL, PDO_PgSQL) n’est disponible. » Si cela se produit, modifiez le fichier php.ini et activez ces extensions.

Visualisation des bases de données Postgres sur Adminer.
Visualisation des bases de données Postgres sur Adminer.

Pour créer une nouvelle base de données, cliquez sur le lien hypertexte Créer une base de données:

Créer une nouvelle base de données avec Adminer.
Créer une nouvelle base de données avec Adminer.

Nommez votre base de données customers et cliquez sur le bouton Enregistrer.

Vérifiez ensuite que vous avez créé la base de données customers en cliquant sur le lien hypertexte Serveur, indiqué ci-dessous :

Navigation vers le serveur Postgres local.
Navigation vers le serveur Postgres local.

Vous verrez maintenant la base de données customers. Cliquez sur customers pour vous y connecter.

Comme vous pouvez le voir, il n’y a pas de tables dans cette base de données. Cliquez sur le lien hypertexte Créer une table pour créer une nouvelle table, appelée locations.

Création d'une table dans une base de données avec Adminer.
Création d’une table dans une base de données avec Adminer.

Remplissez les colonnes appropriées pour qu’elles correspondent à l’image ci-dessous et cliquez sur le bouton Enregistrer:

Dernière étape de la création d'une table dans une base de données.
Dernière étape de la création d’une table dans une base de données.

Vous devriez maintenant pouvoir voir votre table dans votre base de données customers:

Message de confirmation de la création d'une table.
Message de confirmation de la création d’une table.

Cliquez à nouveau sur le lien hypertexte Serveur pour voir toutes vos bases de données. Cochez la case contre les customers. Le fait de cocher la base de données customers activera le bouton de suppression ci-dessous. Cliquez sur drop pour supprimer la base de données. Vous recevrez une confirmation de l’opération de suppression de la base de données :

Message de confirmation de la suppression d'une base de données.
Message de confirmation de la suppression d’une base de données.

Résumé

Vous avez maintenant appris à créer des bases de données, à créer des tables dans votre base de données et à supprimer des bases de données sur votre serveur Postgres local via la ligne de commande. De plus, vous avez appris comment vous pouvez facilement effectuer ces tâches à l’aide d’un outil d’administration de base de données comme Adminer.

Bien que ces méthodes et d’autres méthodes de ligne de commande pour la gestion des bases de données et des tables soient fonctionnelles, l’interface utilisateur pointer-cliquer d’Adminer rend l’exécution de ces tâches encore plus transparente.

En tant que développeur WordPress, DevKinsta vous donne accès à Adminer et à une pléthore d’autres outils pour vous aider à gérer vos bases de données. Pour gérer facilement vos bases de données Postgres, jettez un coup d’œil à DevKinsta – c’est gratuit pour toujours !

Jeremy Holcombe Kinsta

Rédacteur en chef du contenu et du marketing chez Kinsta, développeur web WordPress et rédacteur de contenu. En dehors de WordPress, j'aime la plage, le golf et le cinéma. J'ai aussi des problèmes avec les personnes de grande taille ;).