Résumé : dans ce tutoriel, vous apprendrez à utiliser l’instruction SQL Server CREATE TABLE
pour créer une nouvelle table.
Introduction à l’instruction SQL Server CREATE TABLE
Les tables sont utilisées pour stocker des données dans la base de données. Les tables sont nommées de manière unique dans une base de données et un schéma. Chaque table contient une ou plusieurs colonnes. Et chaque colonne a un type de données associé qui définit le type de données qu’elle peut stocker, par exemple des nombres, des chaînes ou des données temporelles.
Pour créer une nouvelle table, vous utilisez l’instruction CREATE TABLE
comme suit :
Code language: SQL (Structured Query Language) (sql)CREATE TABLE table_name ( pk_column data_type PRIMARY KEY, column_1 data_type NOT NULL, column_2 data_type, ..., table_constraints);
Dans cette syntaxe :
- Tout d’abord, spécifiez le nom de la base de données dans laquelle la table est créée. Le
database_name
doit être le nom d’une base de données existante. Si vous ne le spécifiez pas,database_name
par défaut correspond à la base de données actuelle. - Ensuite, spécifiez le schéma auquel appartient la nouvelle table.
- Troisièmement, spécifiez le nom de la nouvelle table.
- Quatrièmement, chaque table doit avoir une clé primaire composée d’une ou plusieurs colonnes. En règle générale, vous listez d’abord les colonnes de clé primaire, puis les autres colonnes. Si la clé primaire ne contient qu’une seule colonne, vous pouvez utiliser les mots-clés
PRIMARY KEY
après le nom de la colonne. Si la clé primaire se compose de deux colonnes ou plus, vous devez spécifier la contraintePRIMARY KEY
en tant que contrainte de table. Chaque colonne a un type de données associé spécifié après son nom dans l’instruction. Une colonne peut avoir une ou plusieurs contraintes de colonne telles queNOT NULL
etUNIQUE
. - Cinquièmement, une table peut avoir certaines contraintes spécifiées dans la section des contraintes de table telles que
FOREIGN KEY
PRIMARY KEY
UNIQUE
etCHECK
.
Notez que CREATE TABLE
est complexe et a plus d’options que la syntaxe ci-dessus. Nous vous présenterons progressivement chacune des options individuelles dans les tutoriels suivants.
Exemple de TABLE de création de SQL Server
L’instruction suivante crée une nouvelle table nommée sales.visits
pour suivre les visites en magasin des clients :
Code language: SQL (Structured Query Language) (sql)CREATE TABLE sales.visits ( visit_id INT PRIMARY KEY IDENTITY (1, 1), first_name VARCHAR (50) NOT NULL, last_name VARCHAR (50) NOT NULL, visited_at DATETIME, phone VARCHAR(20), store_id INT NOT NULL, FOREIGN KEY (store_id) REFERENCES sales.stores (store_id));
Dans cet exemple :
Comme nous ne spécifions pas explicitement le nom de la base de données dans laquelle la table est créée, la table de visites est créée dans la base de données BikeStores
. Pour le schéma, nous le spécifions explicitement, par conséquent, la table de visites est créée dans le schéma de vente.
La table visits
contient six colonnes:
- La colonne
visit_id
est la colonne de clé primaire de la table. LeIDENTITY(1,1)
indique à SQL Server de générer automatiquement des nombres entiers pour la colonne en commençant par un et en augmentant de un pour chaque nouvelle ligne. - Les colonnes
first_name
etlast_name
sont des colonnes de chaîne de caractères de typeVARCHAR
. Ces colonnes peuvent stocker jusqu’à 50 caractères. - La colonne
visited_at
est une colonneDATETIME
qui enregistre la date et l’heure auxquelles le client visite le magasin. - La colonne
phone
est une colonne de chaîne de caractères variable qui accepteNULL
. - La colonne
store_id
stocke les numéros d’identification qui identifient le magasin visité par le client. - À la fin de la définition de la table se trouve une contrainte
FOREIGN KEY
. Cette clé étrangère garantit que les valeurs de la colonnestore_id
de la tablevisits
doivent être disponibles dans la colonnestore_id
de la tablestores
. Vous en apprendrez plus sur la contrainteFOREIGN KEY
dans le prochain tutoriel.
Dans ce tutoriel, vous avez appris à utiliser l’instruction SQL Server CREATE TABLE
pour créer une nouvelle table dans une base de données.