Introduction aux contraintes SQL
Les contraintes SQL sont des conditions qui sont appliquées aux colonnes d'une table, pour restreindre la colonne pour accepter certaines valeurs ou simplement pour vous assurer qu'une certaine condition est remplie pour chaque valeur de la colonne. Les contraintes offrent un mécanisme classique pour préserver l'intégrité et l'exactitude des données dans la table.
En SQL, nous avons différents types de contraintes. Examinons les quelques contraintes suivantes dans cet article.
- PAS NUL
- VÉRIFIER
- UNIQUE
- CLÉ PRIMAIRE
- CLÉ ÉTRANGÈRE
- DÉFAUT
Différents types de contraintes SQL
1. Contrainte NOT NULL
Cette contrainte est utilisée lorsque vous ne souhaitez pas qu'une valeur dans cette colonne particulière soit une valeur Null. Cela signifie que nous ne pouvons pas insérer de valeur Null pour cette colonne lors de l'insertion d'une nouvelle ligne dans le tableau. Chaque champ de cette colonne a toujours une valeur non nulle. Une valeur nulle signifie qu'un champ particulier a été laissé vide et que des valeurs telles que zéro ou un espace vide ne relèvent pas de valeurs nulles.
Voyons un exemple pour créer une table appelée Employé, ayant 5 colonnes, où les colonnes empid, name et mobile n'acceptent pas les valeurs NULL.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL,
address VARCHAR(20)
);
2. VERIFIER la contrainte
Cette contrainte limite les valeurs qui peuvent être entrées dans cette colonne particulière du tableau. Pour mieux comprendre cela, prenons l'exemple des notes de passage à un examen. La plage de valeurs pour ces marques ne peut être que de 35 à 100. Pour garantir que seules les valeurs de cette plage sont entrées, nous pouvons créer une contrainte CHECK.
Voyons un exemple de création d'une contrainte CHECK sur le salaire des salariés.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL,
salary INT CHECK (salary >= 15000 AND salary <= 30000),
address VARCHAR(20)
);
3. Contrainte UNIQUE
Cette contrainte est appliquée pour garantir que la colonne particulière n'accepte que des valeurs uniques et que les valeurs répétitives ne sont pas autorisées avec une telle contrainte sur la colonne. Nous pouvons créer plusieurs contraintes UNIQUES sur différentes colonnes d'une table. Une contrainte UNIQUE permet de saisir des valeurs NULL.
Voyons un exemple d'application de la contrainte UNIQUE. Dans cet exemple, nous créons une colonne appelée mobile, dans la table Employé, qui doit être unique et ne peut pas accepter deux fois le même numéro de mobile.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20)
);
4. Contrainte de clé primaire
Cette contrainte est utilisée pour identifier une colonne particulière ou un groupe de colonnes qui peuvent identifier de manière unique une ligne dans la table. Avec la contrainte PRIMARY KEY en place, aucune ligne ne peut avoir de valeur en double. Nous ne pouvons pas avoir NULL comme valeur pour une telle colonne. Même si à la fois une contrainte PRIMARY KEY et une contrainte UNIQUE imposent que les valeurs soient uniques, nous utilisons une contrainte UNIQUE lorsque nous ne voulons pas déclarer la colonne comme clé primaire, mais que les valeurs de cette colonne sont toujours uniques . Nous ne pouvons avoir qu'une seule colonne ou groupe de colonnes PRIMARY KEY dans une table, mais nous pouvons déclarer que de nombreuses colonnes individuelles sont UNIQUES.
Examinons un exemple de la table Employé, créant des ID d'employés uniques, par conséquent, nous pouvons déclarer la colonne empid comme étant la CLÉ PRIMAIRE.
CREATE TABLE Employee (
empid INT NOT NULL PRIMARY KEY,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20)
);
5. Contrainte de clé étrangère
Cette contrainte aide les données d'une table à établir une relation avec les données d'une autre table de la base de données. La clé étrangère peut être une seule colonne ou un ensemble de colonnes. Considérons deux tableaux, Employé et Départements. Supposons que nous ayons une colonne appelée représentée dans Employé et une partie dans Départements. Nous pouvons référencer le départ de l'employé au départ des départements si les colonnes correspondent. Dans ce cas, la colonne dans Employé devient une référence de clé étrangère à la colonne de la table Département, qui est une clé primaire.
CREATE TABLE Employee (
empid INT NOT NULL PRIMARY KEY,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20),
depicted INT FOREIGN KEY REFERENCES Department(depicted)
);
6. Contrainte par défaut
Cette contrainte est utilisée pour spécifier la valeur par défaut d'une colonne particulière dans le tableau. De cette façon, si aucune valeur n'est insérée explicitement pour cette colonne, le moteur de base de données peut toujours se référer à la valeur par défaut spécifiée et l'insérer dans la colonne. Supposons que nous ayons inséré une colonne avec la contrainte NOT NULL et également avec la contrainte DEFAULT, alors nous n'avons pas besoin de définir explicitement une valeur par défaut. Même sans donner de valeur par défaut, la ligne particulière sera insérée dans le tableau.
Examinons un exemple où nous avons entré le lieu dans l'adresse par défaut pour avoir la valeur «Inde».
CREATE TABLE Employee (
empid INT NOT NULL PRIMARY KEY,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20) DEFAULT 'India',
depicted INT FOREIGN KEY REFERENCES Department(depicted),
);
Conclusion
Les contraintes SQL aident le développeur en spécifiant des restrictions et des règles pour les données à insérer dans la table. Les contraintes peuvent être appliquées au niveau de la colonne, uniquement à la colonne particulière ou au niveau de la table, où les contraintes sont appliquées à la table complète. Ces contraintes limitent le type d'informations pouvant être insérées dans le tableau. Cela garantit l'exactitude et la cohérence des données du tableau. En cas de violation des règles spécifiées par les contraintes, l'action est arrêtée.
Articles recommandés
Ceci est un guide des contraintes SQL. Nous discutons ici de l'introduction aux contraintes SQL ainsi que des différents types de contraintes SQL qui incluent les contraintes non nulles, de vérification, uniques, primaires, étrangères et par défaut. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus–
- Base de données en SQL
- Utilisations de SQL
- Table en SQL
- Clé étrangère en SQL
- Comparaison de la clé primaire et de la clé étrangère