Cet article explique le SQL ajouter fonctionnement des colonnes dans une table SQL. Nous explorerons également différents exemples d’opérations SQL add column.

Parfois, nous voulons ajouter des colonnes dans une table existante. Dans les tables existantes, nous pourrions y avoir des enregistrements. Nous ne voulons pas non plus perdre les données existantes. Dans de nombreuses circonstances, nous pouvons supprimer les tables et les recréer, mais cela n’est généralement pas recommandé, en particulier dans un environnement de production, car cela peut être destructeur en ce qui concerne les données., Nous pouvons toujours effectuer une opération SQL add column en utilisant la commande Alter Table, ce qui évite de devoir supprimer des tables, supprimer des données, même si ce n’est que temporairement.

Syntaxe

Nous pouvons effectuer une opération SQL add column sur une table avec la commande transact SQL suivante.,

1
2

ALTER TABLE nom_table
AJOUTER column_name column_definition;

Préparer l’environnement

Nous avons besoin de sélectionner une table de Base de données et insérer des données dans il.

Exécutez la requête suivante pour créer une table Employee dans la base de données SQLShackDemo.

Exécutez la requête suivante pour y insérer des exemples de données.,

Dans la capture d’écran suivante, nous pouvons voir les données existantes dans le tableau des employés.

SQL ajouter fonctionnement des colonnes d’une table SQL

Nous voulons ajouter la colonne ministère de la table Employee. Supposons que nous ayons plusieurs colonnes dans une table; nous devons vérifier si une colonne particulière existe dans la table SQL ou non. Si la colonne spécifiée n’existe pas, nous voulons créer avec le type de données approprié.

Nous pouvons utiliser la vue INFORMATION_SCHEMA pour vérifier les tables et leurs colonnes dans une base de données., Exécutez le code suivant pour obtenir une liste de colonnes, leur type de données dans Employee table.

Dans cette sortie, nous pouvons voir que la table Employee contient 4 colonnes.

Ajoutons un nouveau département de colonnes avec la commande Alter Table suivante.,

1
2

ALTER TABLE Employé
AJOUTER Département Varchar(50)

Exécuter cette requête et sélectionnez les enregistrements de la table Employee. Dans la capture d’écran suivante, nous pouvons regarder le nouveau département de colonne. Tous les enregistrements existants contiennent une valeur NULL dans cette colonne.,

Auparavant, nous avons vérifié toutes les colonnes de la table Employee en utilisant la vue INFORMATION_SCHEMA. Dans la requête suivante, nous voulons créer une table de département uniquement si elle n’existe pas dans la table Employee.,

1
2
3
4
5
6
7
8
9
10
11

SI n’EXISTE PAS
(
SELECT *
FROM INFORMATION_SCHEMA.,LES COLONNES
OÙ TABLE_NAME = ‘Employee’
ET COLUMN_NAME = ‘Department’
)
BEGIN
ALTER TABLE Employee
ADD Department VARCHAR(50);
END;

Nous pouvons ajouter une colonne dans une table existante si elle autorise des valeurs NULL ou si une valeur par défaut y est définie., We can try to add Not NULL column in the existing SQL table, but it gives the following error message,

1
2
3
4
5
6
7
8
9
10
11

IF NOT EXISTS
(
SELECT *
FROM INFORMATION_SCHEMA.,COLONNES
WHERE TABLE_NAME = ‘Employé’
ET COLUMN_NAME = « Téléphone »
)
COMMENCER
ALTER TABLE Employé
AJOUTER un Téléphone de type VARCHAR(15) not NULL;
à la FIN;

SQL ajouter fonctionnement des colonnes à une table SQL avec une valeur par défaut

Supposons que nous voulons ajouter la colonne est actif colonne dans la table Employee., On peut avoir les valeurs suivantes dans cette colonne

  • Valeur 1: l’Employé est active
  • la Valeur 0: Employé n’est pas active

Par défaut, tous les existants et les nouveaux employés devraient avoir la Valeur 1 est actif dans la colonne. Nous pouvons spécifier une valeur en utilisant la contrainte par défaut.,

If we try to add a column with a Not NULL value in the existing SQL table, we get following error message,

1
2
3
4
5
6
7
8
9
10
11

IF NOT EXISTS
(
SELECT *
FROM INFORMATION_SCHEMA.,COLONNES
WHERE TABLE_NAME = ‘Employé’
ET COLUMN_NAME = « Téléphone »
)
COMMENCER
ALTER TABLE Employé
AJOUTER un bit est actif par DÉFAUT(1);
à la FIN;

Exécuter cette requête et Sélectionnez les enregistrements d’une table. Pour les enregistrements existants, il ne met pas à jour les valeurs par défaut.

Si nous insérons un nouvel enregistrement dans ce tableau, il obtient la valeur par défaut selon la capture d’écran suivante.,

SQL ajouter une opération de colonne à une table SQL existante avec une colonne d’identité

Dans SQL Server, nous utilisons la fonction d’identité pour définir une valeur par défaut et d’incrément automatique pour chaque nouvelle ligne. Nous pouvons également ajouter une colonne d’identité à la table SQL existante. Créons une nouvelle table Employee_new sans colonne d’identité.

une Fois que le tableau est là, nous pouvons ajouter une colonne d’identité avec la requête suivante.,

1
2
3
4
5
6
7
8
9
10
11

SI n’EXISTE PAS
(
SELECT *
FROM INFORMATION_SCHEMA.,LES COLONNES
OÙ TABLE_NAME = ‘Employee_new’
ET COLUMN_NAME = ‘ID’
)
BEGIN
ALTER TABLE Employee_new
ADD ID INT IDENTITY(1,1) NOT NULL
END;

Nous avons créé la colonne Identity dans une table sans aucun enregistrement. Laissons tomber la table et recréons-la. Insérez quelques enregistrements avec la requête suivante.

Nous avons données dans le Employee_new table. Ajoutons une colonne d’identité avec la commande Alter table.,

1
2
3
4
5
6
7
8
9
10
11

SI n’EXISTE PAS
(
SELECT *
FROM INFORMATION_SCHEMA.,LES COLONNES
OÙ TABLE_NAME = ‘Employee_new’
ET COLUMN_NAME = ‘ID’
)
BEGIN
ALTER TABLE Employee_new
ADD ID INT IDENTITY(1,1) NOT NULL
END;

Dans la capture d’écran suivante, nous pouvons également voir qu’il met à jour les enregistrements existants.

SQL Multiples ajouter opérations de colonne pour une table SQL avec une colonne d’identité

nous avons besoin de Nous pour ajouter plusieurs colonnes à une table SQL., Nous pouvons le faire dans la même commande Alter table.

Dans la requête suivante, nous avons ajouté deux colonnes ZipCode et StateCode dans une seule commande Alter Table. Nous devons spécifier toutes les colonnes à ajouter dans un format similaire.,

1
2
3
4

ALTER TABLE Employee_new
ADD ZipCode INT NULL,
StateCode INT NULL;
GO

We can get details of all columns and their properties using sp_help command.,

1
sp_help ‘Employee_new’

SQL ajouter fonctionnement des colonnes à une table SQL avec le concepteur de table dans SSMS

Dans les exemples précédents nous avons utilisé le t-SQL pour ajouter des colonnes dans la table existante. Nous ne sommes peut-être pas familiers avec l’écriture de code t-SQL. Nous pouvons également utiliser l’interface graphique SSMS pour ajouter une colonne.,

Faites un clic droit sur le tableau et cliquez sur Design.

Il ouvre un concepteur de table. Nous pouvons voir toutes les colonnes existantes, leurs types de données, leurs valeurs par défaut et d’autres propriétés pour une table spécifiée dans un concepteur de table

Fournissez un nom de colonne et sélectionnez les types de données dans la liste déroulante. Nous pouvons y ajouter plusieurs colonnes avec les types de données appropriés.

une Fois terminé, Enregistrez et fermez le concepteur de table dans SSMS., Si vous essayez de le fermer sans enregistrer les modifications, nous obtenons un message d’avertissement ainsi.

Cliquez sur Oui pour enregistrer la nouvelle colonne dans la table existante. Nous pouvons soit exécuter une instruction Select pour vérifier la nouvelle colonne, soit utiliser la commande sp_help pour lister toutes les colonnes et leurs propriétés.

1
sp_help ‘Employé.,’

Dans la capture d’écran suivante, on peut voir une nouvelle colonne dans la table Employee.

Conclusion

Dans cet article, nous avons exploré SQL ajouter opérations de colonne pour ajouter une nouvelle colonne à une table SQL. Nous pouvons utiliser à la fois l’interface graphique et la méthode transact SQL pour le faire. J’espère que vous avez trouvé cet article utile. Vous pouvez fournir des commentaires ou des commentaires dans la section commentaires ci-dessous.,

  • Auteur
  • Messages récents
En tant que formateur certifié MCSA et Microsoft à Gurgaon, en Inde, avec 13 ans d’expérience, Rajendra travaille pour une variété de grandes entreprises en se concentrant sur l’optimisation des performances, la surveillance, la haute disponibilité et les stratégies de reprise après sinistre et la mise en œuvre., Il est l’auteur de centaines d’articles faisant autorité sur SQL Server, Azure, MySQL, Linux, Power BI, Performance tuning, AWS/Amazon RDS, Git et les technologies connexes qui ont été consultés par plus de 10 millions de lecteurs à ce jour.
Il est le créateur de l’une des plus grandes collections en ligne gratuites d’articles sur un seul sujet, avec sa série de 50 parties sur SQL Server Toujours sur les groupes de disponibilité. Sur la base de sa contribution à la communauté SQL Server, il a été reconnu par divers prix, y compris le prestigieux « Meilleur auteur de l’année » en continu en 2020 et 2021 à SQLShack.,
Raj est toujours intéressé par les nouveaux défis, donc si vous avez besoin d’aide de consultation sur un sujet couvert dans ses écrits, il peut être joint à rajendra.gupta16 @ gmail.,com
Voir tous les messages de Rajendra Gupta

Derniers messages de Rajendra Gupta (voir tout)
  • Effectuer des mises à niveau mineures et majeures pour AWS RDS SQL Server – Janvier 29, 2021
  • Déploiement d’instances PostgreSQL AWS RDS – 27 janvier 2021
  • Migration de vos bases de données SQL sur site vers AWS RDS SQL Server à l’aide d’AWS DMS-25 janvier 2021