SQL CREATE TABLE : comment créer une nouvelle table ?
SQL CREATE TABLE
est utilisé pour créer une nouvelle table au sein d’une base de données. Lors de la création, des paramètres importants sont déjà définis et il est possible d’utiliser une table existante comme base.
Qu’est-ce que SQL CREATE TABLE
?
Après avoir créé une base de données SQL à l’aide du Structured Query Language (SQL), vous pouvez créer une nouvelle table. Cette dernière sert à stocker vos enregistrements et indique la structure dans laquelle ces données doivent être préparées. Les tableaux se composent d’une part de champs ou colonnes qui peuvent contenir certains types de données et d’autre part de lignes dans lesquelles ces données sont listées. Pour créer une nouvelle table, il suffit d’utiliser l’instruction SQL CREATE TABLE
. Celle-ci vous permet non seulement de créer la nouvelle table, mais aussi de déterminer comment elle doit être structurée. Ensuite, vous la remplissez avec les données correspondantes.
- Virtualisation complète avec accès root
- Trafic illimité et jusqu'à 1 Gbit/s de bande passante
- Stockage SSD NVMe rapide et édition Plesk Web Host
Syntaxe et fonctionnement
En jetant un coup d’œil à la syntaxe de SQL CREATE TABLE
, vous pouvez déjà constater que les types de données et les désignations sont obligatoires dès le début pour la création correcte d’une nouvelle table. La syntaxe se présente de cette manière :
CREATE TABLE nom_de_la_table (
colonne1 type_de_données,
colonne2 type_de_données,
colonne3 type_de_données,
...
);
sqlAvec la commande SQL CREATE TABLE
, vous créez une nouvelle table en spécifiant son nom sur la première ligne. Cette table est ensuite spécifiée à l’intérieur des parenthèses. Vous choisissez ainsi une désignation pour colonne1
, colonne2
etc. et vous indiquez les types de données qui peuvent être déposés dans cette colonne. Les types de données les plus utilisés sont par exemple VARCHAR
(une chaîne de caractères pouvant contenir des lettres, des chiffres ou des caractères spéciaux), BOOLEAN
(pour les valeurs booléennes true ou false), INT
(pour les valeurs numériques) ou DATE
(pour les données de date).
Exemple d’une nouvelle table
Pour illustrer le fonctionnement de SQL CREATE TABLE
, rien ne vaut un exemple concret. Pour cela, nous créons un répertoire d’employés qui contient un identifiant d’employé, le nom de famille, le prénom, l’adresse, la ville et l’âge. Nous avons donc besoin de six colonnes au total, qui peuvent stocker différents types de données. Voici à quoi ressemble le code approprié :
CREATE TABLE Employés (
Identifiant INT NOT NULL,
Nom de famille VARCHAR(50),
Prénom VARCHAR(50),
Adresse VARCHAR(50),
Ville VARCHAR(50),
Âge INT NOT NULL
);
sqlPour l’identifiant et l’âge, nous choisissons le type de données INT
, qui contient des chiffres. L’ajout NOT NULL
indique que ces champs ne doivent pas être laissés vides. Les autres colonnes Nom de famille
, Prénom
, Adresse
et Ville
peuvent contenir des lettres, des chiffres et des caractères spéciaux.
Combinaison avec la commande IF NOT EXISTS
Chaque table doit être unique dans une base de données pour que le système puisse y accéder. Ainsi, si vous essayez de créer une nouvelle table avec SQL CREATE TABLE
et que vous choisissez un nom qui existe déjà, vous recevrez un message d’erreur du type Error: table already exists
. Pour éviter cela, vous pouvez ajouter la commande optionnelle IF NOT EXISTS
. Celle-ci vérifie d’abord s’il existe déjà une table avec le même nom. Si ce n’est pas le cas, elle crée un nouveau tableau avec les paramètres définis. Voici le code correspondant à notre exemple précédent :
CREATE TABLE IF NOT EXISTS Employés (
Identifiant INT NOT NULL,
Nom de famille VARCHAR(50),
Prénom VARCHAR(50),
Adresse VARCHAR(50),
Ville VARCHAR(50),
Âge INT NOT NULL
);
sqlCréer une nouvelle table sur la base d’une table existante
Même si cette instruction fonctionne assez facilement, elle peut être fastidieuse si vous devez créer plusieurs tables similaires. C’est pourquoi SQL CREATE DATABASE
vous permet également de créer une nouvelle table en vous basant sur une table déjà existante. Vous avez alors le choix de créer une copie exacte ou de ne prendre en compte que certains paramètres. Nous vous présentons les deux procédures. Dans le premier cas, nous créons une liste d’employés pour un autre établissement. Celle-ci doit donc être structurée de manière identique, mais nécessite un nouveau nom. Voici le code à utiliser :
CREATE TABLE Nouvelle_liste_d'employés
AS
SELECT *
FROM Employés;
sqlL’astérisque indique au système qu’il doit reprendre toutes les colonnes.
Dans l’exemple suivant, nous créons une liste de clients. Celle-ci doit également contenir les colonnes Identifiant, Nom, Prénom, Adresse et Ville, mais la date de naissance ne doit pas être créée. Nous définissons donc exactement quelles colonnes doivent être copiées :
CREATE TABLE Liste de clients
AS
SELECT ID, Nom, Prénom, Adresse, Ville
FROM Employés;
sqlCommandes similaires à SQL CREATE TABLE
Outre CREATE DATABASE
déjà évoqué, il existe d’autres instructions qui sont importantes pour travailler avec SQL CREATE TABLE
. Il s’agit notamment de SQL DELETE
, qui permet de supprimer des entrées d’une table, et des alias SQL, qui permettent de renommer temporairement des tables ou des colonnes.
Votre serveur personnel : avec le serveur d’hébergement SQL de IONOS, vous ne choisissez pas seulement entre MSSQL, MySQL et MariaDB, mais vous profitez également de nombreuses fonctionnalités utiles. Trouvez la solution adaptée à vos besoins !