# SQL DROP DATABASE : supprimer définitivement une base de données

SQL `DROP DATABASE` est utilisé pour supprimer définitivement une base de données entière, y compris toutes les tables et les entrées. Cette [commande SQL](https://www.ionos.fr/digitalguide/serveur/configuration/commandes-sql/) ne doit donc être utilisée que dans le cas où la base de données est devenue obsolète, ou s’il en existe des sauvegardes. Il est également possible de supprimer plusieurs bases de données en même temps.

## Qu’est-ce que SQL `DROP DATABASE` ?

Lorsque vous travaillez avec le [Structured Query Language](https://www.ionos.fr/digitalguide/serveur/configuration/introduction-a-sql-a-laide-dexemples/) (SQL), les premières étapes sont toujours les mêmes. Tout d’abord, vous utilisez [SQL `CREATE DATABASE`](https://www.ionos.fr/digitalguide/serveur/configuration/sql-create-database/) pour créer une nouvelle base de données. Ensuite, utilisez [SQL `CREATE TABLE`](https://www.ionos.fr/digitalguide/serveur/configuration/sql-create-table/) pour créer une ou plusieurs nouvelles tables que vous pourrez ensuite remplir de données. Afin de s’assurer que les bases de données obsolètes **ne prennent plus d’espace disque et que les enregistrements sensibles ne soient pas exposés**, il peut être judicieux d’effectuer des suppressions. Le langage propose alors une instruction très utile à cet effet : SQL `DROP DATABASE` supprime l’ensemble de la base de données et toutes ses connexions.

Il est important de prendre les précautions nécessaires au préalable. Si une base de données a été supprimée une fois avec cette commande, toutes les données sont **irrémédiablement perdues**. Veillez donc à créer des [sauvegardes](https://www.ionos.fr/digitalguide/serveur/securite/quest-ce-quune-sauvegarde/) à l’aide de la commande [SQL `BACKUP DATABASE`](https://www.ionos.fr/digitalguide/serveur/configuration/sql-backup-database/) lors de votre travail. Vous devez également vous assurer qu’aucun programme ou processus important ne dépend de la base de données. En règle générale, la suppression elle-même ne peut être effectuée que par un administrateur. Si vous souhaitez utiliser SQL `DROP DATABASE`, vous devez donc disposer des droits correspondants.

## Syntaxe et fonctionnement

La syntaxe de SQL `DROP DATABASE` se présente comme suit :

```sql
DROP DATABASE Nom_base_de_données;
```

Il suffit donc d’insérer le nom de la base de données correspondante, puis d’exécuter le code. La base de données est ensuite supprimée avec toutes les tables et les entrées et ne peut donc plus être appelée.

## Exemple de suppression

Dans la pratique, SQL `DROP DATABASE` pourrait par exemple ressembler à ce qui suit. Imaginons pour cela que nous ayons une base de données appelée « Clients », mais dont les entrées ne sont plus actuelles. Nous avons déjà créé une nouvelle base de données avec toutes les données importantes, et souhaitons maintenant supprimer l’ensemble de l’ancienne base de données, sans pour autant supprimer chaque table individuellement. La commande correspondante ressemblerait à ceci :

```sql
DROP DATABASE Clients;
```

## Combinaison avec `IF EXISTS`

Si vous n’êtes pas sûr qu’une certaine base de données existe (encore), vous pouvez utiliser SQL `DROP DATABASE` avec la commande `IF EXISTS`. Celle-ci vérifie d’abord **si une base de données avec le nom correspondant existe**. Si c’est le cas, elle est supprimée. Si aucune base de données de ce type ne peut être trouvée, la commande expire tout simplement. Vous évitez ainsi qu’un message d’erreur ne soit affiché. Voici le code correspondant à notre exemple précédent :

```sql
DROP DATABASE IF EXISTS Clients;
```

## Suppression de plusieurs bases de données

Si vous voulez supprimer plusieurs bases de données en même temps, il suffit de les lister avec des virgules. SQL `DROP DATABASE` pourrait alors ressembler à ceci :

```sql
DROP DATABASE Clients, Collaborateurs, Filiales;
```

Dans ce cas, vous supprimeriez simultanément les bases de données « Clients », « Collaborateurs » et « Filiales ».

## Afficher les bases de données existantes

Si vous souhaitez vérifier quelles bases de données se trouvent sur votre système, utilisez la commande `SHOW DATABASES`. Celle-ci vous donne la liste de toutes les entrées. Si la suppression a été effectuée avec succès, vous ne trouverez plus les bases de données supprimées dans cette liste. Cette commande est donc une bonne méthode pour vérifier si SQL `DROP DATABASE` a été effectué correctement. La syntaxe est la suivante :

```sql
SHOW DATABASES;
```

## Commandes similaires à SQL `DROP DATABASE`

Dans de nombreux cas, vous ne souhaitez pas supprimer toute la base de données, mais seulement certaines entrées ou tables. Pour cela aussi, SQL met à votre disposition plusieurs commandes. Si vous souhaitez supprimer une table complète, choisissez `DROP TABLE`. Si la table doit être conservée, mais entièrement vidée, utilisez `TRUNCATE TABLE`. L’instruction [SQL `DELETE`](https://www.ionos.fr/digitalguide/serveur/configuration/sql-delete/) permet aussi de vider complètement une table. Celle-ci permet également des conditions, de sorte que seules certaines colonnes ou entrées sont prises en compte si nécessaire.

Conseil MSSQL, MySQL ou MariaDB ? Avec le [serveur d’hébergement SQL](https://www.ionos.fr/cloud/hebergement-serveur-sql "Hébergement SQL pour les bases de données MSSQL, MySQL et MariaDB | IONOS") de IONOS, vous avez le choix et vous bénéficiez de performances élevées, de fonctions de sécurité étendues et d’un conseil aussi professionnel que personnalisé.


This is a markdown version of: [https://www.ionos.fr/digitalguide/serveur/configuration/sql-drop-database/](https://www.ionos.fr/digitalguide/serveur/configuration/sql-drop-database/) for AI/LLM consumption.