OUJOOD.COM
L'instruction SQL CREATE DATABASE
Avant de stocker la moindre donnée, il faut un endroit où la ranger. En SQL, cet endroit s'appelle une base de données, et on la crée avec l'instruction CREATE DATABASE. C'est l'une des premières commandes qu'on tape quand on démarre un nouveau projet, que ce soit une boutique en ligne, une application mobile ou un simple carnet d'adresses.
Une base de données n'est pas juste un dossier vide. Elle peut contenir des tables (où vivent les données), des vues, des procédures stockées, des fonctions et des déclencheurs. Mais tout commence par CREATE DATABASE.
Syntaxe de base
La syntaxe minimale est volontairement simple : on donne un nom, SQL crée la base. Le nom doit être unique sur le serveur, composé uniquement de lettres, de chiffres et de tirets bas (_). Pas d'espaces, pas d'accents, pas de caractères spéciaux, et il ne peut pas commencer par un chiffre.
CREATE DATABASE nom_base_de_données
Par exemple, pour créer une base de données dédiée à un site e-commerce :
CREATE DATABASE eCommerce
Résultat : la base eCommerce est créée et prête à accueillir des tables. Elle est vide pour l'instant — CREATE DATABASE ne crée pas de tables automatiquement.
Les options disponibles
La syntaxe de base suffit pour démarrer, mais en production on a souvent besoin de contrôler d'autres paramètres. Les options les plus utiles sont les suivantes :
- OWNER : désigne le propriétaire de la base. Important quand plusieurs utilisateurs ont des droits différents sur le serveur.
- DATA_FILE_PATH : chemin vers les fichiers de données. Par défaut, SQL Server choisit lui-même l'emplacement.
- LOG_FILE_PATH : chemin vers les fichiers journaux (logs des transactions).
- SIZE : taille initiale allouée aux fichiers. Utile pour éviter des redimensionnements fréquents sur une grosse base.
- MAX_SIZE : plafond que les fichiers ne peuvent pas dépasser. Pratique pour éviter qu'une base ne mange tout l'espace disque.
- FILEGROWTH : taux d'agrandissement automatique quand la base atteint sa taille actuelle.
- COLLATE : jeu de caractères et règles de tri. En France, on choisit souvent une collation qui gère correctement les accents français.
Exemples avec options
Voici comment créer la base eCommerce avec un propriétaire et des limites de taille définies :
CREATE DATABASE eCommerce OWNER = admin SIZE = 100MB MAX_SIZE = 1GB
Ici, la base démarre avec 100 Mo d'espace alloué et ne pourra jamais dépasser 1 Go. L'utilisateur admin en est le propriétaire.
Pour placer les fichiers dans un répertoire précis — utile sur un serveur Linux où on sépare les données des logs :
CREATE DATABASE eCommerce DATA_FILE_PATH = '/var/lib/mysql/eCommerce.data' LOG_FILE_PATH = '/var/lib/mysql/eCommerce.log'
Sélectionner une base avec USE
Une fois la base créée, il faut indiquer au serveur avec quelle base on veut travailler. C'est le rôle de la commande USE. Sans elle, SQL ne sait pas où envoyer les requêtes.
USE customers;
Toutes les requêtes qui suivent s'exécutent dans la base customers. Par exemple :
USE customers; SELECT * FROM customers;
La commande USE peut aussi cibler une base sur un serveur distant. On ajoute alors le nom du serveur après le @ :
USE customers@myserver;
Conseils pratiques avant de créer une base
- Vérifier d'abord que la base n'existe pas déjà —
CREATE DATABASE IF NOT EXISTSest disponible sur MySQL et MariaDB pour éviter une erreur silencieuse. - Choisir un emplacement avec suffisamment d'espace libre. Sur un serveur partagé, une base qui grossit trop vite peut bloquer tous les autres services.
- Définir les droits d'accès dès la création. Ne pas laisser la base accessible à tous les utilisateurs par défaut.
- CREATE DATABASE ne crée pas de tables : il faut utiliser
CREATE TABLEensuite. - Pour supprimer une base, on utilise
DROP DATABASE— attention, c'est irréversible.
Autres commandes de gestion des bases de données
SQL propose plusieurs commandes pour administrer les bases après leur création :
- ALTER DATABASE : modifie les propriétés d'une base existante (taille, collation, etc.).
- DROP DATABASE : supprime définitivement une base et tout son contenu.
- BACKUP DATABASE : sauvegarde une base dans un fichier.
- RESTORE DATABASE : restaure une base à partir d'une sauvegarde.
- ATTACH DATABASE : rattache une base externe au serveur.
- DETACH DATABASE : détache une base du serveur sans la supprimer.
On verra ces commandes en détail dans le chapitre suivant.
Par carabde | Mis à jour le 17 mai 2026