Introduction aux contraintes SQL Server

Les contraintes sont des règles et des réglementations qui s'appliquent sur une colonne ou une table à partir de laquelle des données indésirables ne peuvent pas être insérées dans la table. Nous pouvons spécifier la limite de type de données qui peut être stockée à l'aide de contraintes dans une colonne particulière d'une table. Nous allons maintenant voir en détail les contraintes du serveur SQL.

Comment spécifier des contraintes?

Nous pouvons définir des contraintes au moment de développer la table en utilisant l'instruction create table. Après avoir créé une table, nous pouvons également spécifier les contraintes à l'aide de l'instruction ALTER TABLE.

Syntaxe

Créer une table en utilisant cette syntaxe

Create TABLE Information_ table
(
Column1 data_type(Size) Constraints_name,
Column2 data_type(Size) Constraints_name,
Column3 data_type(Size) Constraints_name,
);

  • Information_table: nom de la table à créer.
  • Data_type: type de données pouvant être stocké dans le champ.
  • Constraints_Name: Ceci représente le nom des contraintes. Par conséquent, l'exemple n'est PAS NUL, UNIQUE, PRIMAIRE, etc.

Contraintes en SQL

Certaines contraintes dans SQL sont les suivantes:

1. PAS NUL

Ces contraintes NOT NULL indiquent que nous ne pouvons pas stocker la valeur nulle dans la colonne. Cela signifie que nous ne pouvons plus stocker null dans cette colonne particulière si une colonne est spécifiée comme NON NUL. Vous ne serez pas autorisé à insérer une nouvelle ligne dans le tableau sans spécifier de valeur dans ce champ.

Exemple

Nous créons un collège de nom de table avec le nom d'ID de champ et le courrier électronique comme NON NUL. Par conséquent, sans spécifier de valeur dans ce champ, vous ne serez pas autorisé à insérer une nouvelle ligne dans la table.

Syntaxe

Create Table College
(
ID name (10) NOT NULL,
Email (15) NOT NULL,
ADDRESS varchar(50)
);

2. UNIQUE

Cette limitation UNIQUE aidera à identifier chaque ligne de la table comme unique. Par exemple, colonne singulière, toutes les lignes doivent avoir une valeur différente. Dans une table, nous pouvons avoir plus d'une colonne UNIQUE. SQL utilise une contrainte spéciale pour vérifier si la sous-requête a des tuples en double dans le résultat.

Points à retenir

  1. Évalue true sur une sous-requête vide.
  2. Renvoie true s'il y a deux lignes doubles avec au moins un attribut NULL dans la sous-requête.

Syntaxe

Create Table College
(
ID int (6 ) NOT NULL UNIQUE,
NAME varchar(15),
ADDRESS Varchar(50),
);

3. CLÉ PRIMAIRE

La clé primaire est utilisée pour identifier les lignes uniques de la table. Si la table contient la clé de principe en tant que champ, ce champ ne peut pas contenir de valeurs nulles et parce que la clé primaire identifie chaque ligne de manière unique, toutes les lignes doivent contenir des valeurs uniques. Nous pouvons donc dire en d'autres termes qu'il s'agit d'une combinaison de limitations NOT NULL et UNIQUE. Une table nommée Student sera créée ci-dessous et l'ID de champ est spécifié comme clé primaire

Syntaxe

Create Table College
(
ID INT(8) NOT NULL UNIQUE,
Address varchar(50),
Email Varchar(20),
Primary Key (ID)
);

4. CLÉ ÉTRANGÈRE

Une clé étrangère (FK) est une colonne ou une combinaison de colonnes utilisée dans deux tables pour établir et appliquer une relation de données. Voici un exemple de diagramme montrant la relation table employé-service. Si vous l'examinez attentivement, vous remarquerez que la colonne dept_id INT de la table des employés correspond à la colonne de clé primaire de la table des départements. Par conséquent, la colonne d'ID de rayon de la table des employés est la clé étrangère de la table des départements.

Dans MySQL, lorsque vous créez une table illustrée ci-dessous, vous pouvez créer une clé étrangère en définissant une restriction FOREIGN KEY. L'instruction suivante définit une clé étrangère dans la colonne Collège de la table des employés qui fait référence à la colonne ID Collège de la table des départements.

Syntaxe

Create table College (
Emp_id Int NOT NULL PRIMARY KEY,
emp _Name VArchar(20) NOT NULL,
hire_DATE NOT NULL,
salary INT,
Dept_ID INT,
Foreign Key (Dept_id)References Departments (dept_Id)
);

5. VERIFIER LES CONTRAINTES

En utilisant la limite CHECK, nous pouvons spécifier une condition de champ qui doit être remplie lors de la saisie de valeurs pour ce champ. Par exemple, la requête ci-dessous crée une table Student et spécifie la condition du champ AGE comme (AGE> = 18). En d'autres termes, l'utilisateur n'est pas autorisé à entrer des enregistrements dans les tables AGE <18.

Syntaxe

Create table dogs(
ID INT NOT NULL,
Name VARCHAR (25) NOT NULL,
Breed Name Varchar (30) NOT NULL,
AGE OF BREED INT,
GENDER VARCHAR(9),
PRIMARY KEY (ID),
Check (Gender in ('male', 'female', 'UNKNOW'))
);

REMARQUE: la contrainte de vérification dans la commande SQL ci-dessus restreint le GENRE pour n'appartenir qu'aux catégories spécifiées. Si un nouveau tuple est ajouté ou qu'un tuple existant dans le lien est mis à jour avec un GENRE n'appartenant à aucune des trois catégories mentionnées, la mise à jour correspondante de la base de données sera abandonnée.

Conclusion

Par conséquent, nous avons découvert les différentes contraintes de SQL dans ce didacticiel SQL sur les contraintes. Tout d'abord, nous avons vu une brève introduction à la contrainte SQL. Ensuite, nous passons aux types de contraintes SQL. Nous avons également discuté de la clé étrangère SQL, de la clé primaire SQL. Nous avons également appris SQL Server Drop Constraint et Integrity Constraint dans SQL Server.

Articles recommandés

Cela a été un guide pour les contraintes du serveur SQL. Ici, nous avons discuté de la façon de spécifier les contraintes, les types de contraintes avec leur définition spécifique et des exemples respectivement. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus -

  1. Introduction aux fonctions de chaîne T-SQL
  2. Qu'est-ce que l'injection SQL?
  3. Qu'est-ce que SSRS? | Rapports | Tutoriels
  4. Qu'est-ce que la procédure en SQL?
  5. Types de jointures dans SQL Server
  6. Différentes opérations liées aux tuples
  7. 6 principaux types de jointures dans MySQL avec des exemples