logo

SQL | Contraintes

Contraintes SQL sont des éléments essentiels dans conception de base de données relationnelle qui assurent la intégrité précision et fiabilité des données stockées dans une base de données. En appliquant des règles spécifiques sur les colonnes de la table, les contraintes SQL aident à maintenir la cohérence des données, en évitant les entrées de données non valides et en optimisant les performances des requêtes.

si sinon boucle en java

Dans cet article, nous expliquerons en détail les contraintes SQL les plus courantes en fournissant des exemples clairs et en expliquant comment les implémenter efficacement.

Que sont les contraintes SQL ?

Contraintes SQL des règles sont-elles appliquées à colonnes ou tableaux dans un base de données relationnelle pour limiter le type de données pouvant être inséré mis à jour ou supprimé . Ces règles garantissent que les données sont valides, cohérentes et respectent la logique métier ou exigences de la base de données . Les contraintes peuvent être appliquées lors de la création de la table ou ultérieurement à l'aide de l'outil ALTER TABLE déclaration. Ils jouent un rôle essentiel dans le maintien de la qualité et de l’intégrité de votre base de données.



Types de contraintes SQL 

SQL fournit plusieurs types de contraintes pour gérer différents aspects de l'intégrité des données. Ces contraintes sont essentielles pour garantir que les données répondent aux exigences de précision cohérence et validité . Passons en revue chacun d’eux avec des explications détaillées et des exemples.

1. Contrainte NOT NULL

Le PAS NUL La contrainte garantit qu'une colonne ne peut pas contenir de valeurs NULL. Ceci est particulièrement important pour les colonnes où une valeur est essentielle pour identifier les enregistrements ou effectuer des calculs. Si une colonne est définie comme PAS NUL chaque ligne doit inclure une valeur pour cette colonne.

Exemple:

CREATE TABLE Student  
(
ID int(6) NOT NULL
NAME varchar(10) NOT NULL
ADDRESS varchar(20)
);

Explication: Dans l'exemple ci-dessus, les deuxIDetNAMEles colonnes sont définies avec le PAS NUL contrainte signifiant que chaque élève doit avoir unIDetNAMEvaleur.

2. Contrainte UNIQUE

Le UNIQUE La contrainte garantit que toutes les valeurs d'une colonne sont distinctes sur toutes les lignes d'un tableau. Contrairement au CLÉ PRIMAIRE qui nécessite l'unicité et n'autorise pas les valeurs NULL, la contrainte UNIQUE autorise les valeurs NULL mais applique toujours l'unicité pour les entrées non NULL.

Exemple:

CREATE TABLE Student  
(
ID int(6) NOT NULL UNIQUE
NAME varchar(10)
ADDRESS varchar(20)
);

Explication : Ici leIDLa colonne doit avoir des valeurs uniques garantissant que deux étudiants ne peuvent pas partager la mêmeID. Nous pouvons en avoir plus d'un UNIQUE contrainte dans un tableau.

comment avoir des emojis iPhone sur Android

3. Contrainte CLÉ PRIMAIRE  

UN CLÉ PRIMAIRE la contrainte est une combinaison de PAS NUL et UNIQUE contraintes. Il identifie de manière unique chaque ligne d'un tableau. Une table ne peut en avoir qu'un CLÉ PRIMAIRE et il ne peut pas accepter les valeurs NULL. Ceci est généralement utilisé pour la colonne qui servira d'identifiant des enregistrements.

Exemple:

CREATE TABLE Student  
(
ID int(6) NOT NULL UNIQUE
NAME varchar(10)
ADDRESS varchar(20)
PRIMARY KEY(ID)
);

Explication: Dans ce cas leIDLa colonne est définie comme clé primaire garantissant que l’identifiant de chaque étudiant est unique et ne peut pas être NULL.

4. Contrainte DE CLÉ ÉTRANGÈRE

UN CLÉ ÉTRANGÈRE la contrainte lie une colonne d'une table à la clé primaire dans un autre tableau. Cette relation contribue à maintenir intégrité référentielle en s'assurant que la valeur dans le clé étrangère La colonne correspond à un enregistrement valide dans la table référencée.

Tableau des commandes :

O_IDORDER_NOID_C
122533
233253
345212
485321

Tableau des clients :

ID_CNOMADRESSE
1RAMÈSDELHI
2SURESHNOIDA
3DHARMESHGURGAON

Comme on voit clairement que le domaine ID_C dans Tableau des commandes est le clé primaire dans la table Clients, c'est-à-dire qu'il identifie de manière unique chaque ligne du Clients tableau. Il s’agit donc d’une table de clé étrangère dans les commandes. 

Exemple:

CREATE TABLE Orders  
(
O_ID int NOT NULL
ORDER_NO int NOT NULL
C_ID int
PRIMARY KEY (O_ID)
FOREIGN KEY (C_ID) REFERENCES Customers(C_ID)
)

Explication: Dans cet exemple, leC_IDcolonne dans laOrderstable est une clé étrangère qui fait référence auC_IDcolonne dans laCustomerstableau. Cela garantit que seuls les identifiants client valides peuvent être insérés dans leOrderstableau.

5. Contrainte CHECK

Le VÉRIFIER La contrainte nous permet de spécifier une condition que les données doivent satisfaire avant d'être insérées dans la table. Cela peut être utilisé pour appliquer des règles telles que garantir que la valeur d'une colonne répond à certains critères (par exemple, l'âge doit être supérieur à 18 ans).

Exemple:

Linux ipconfig gratuit
CREATE TABLE Student  
(
ID int(6) NOT NULL
NAME varchar(10) NOT NULL
AGE int NOT NULL CHECK (AGE >= 18)
);

Explication: Dans le tableau ci-dessus, le VÉRIFIER La contrainte garantit que seuls les étudiants âgés de 18 ans ou plus peuvent être insérés dans le tableau.

6. Contrainte DEFAULT

Le DÉFAUT La contrainte fournit une valeur par défaut pour une colonne lorsqu'aucune valeur n'est spécifiée lors de l'insertion. Ceci est utile pour garantir que certaines colonnes ont toujours une valeur significative même si l'utilisateur n'en fournit pas.

Exemple:

CREATE TABLE Student  
(
ID int(6) NOT NULL
NAME varchar(10) NOT NULL
AGE int DEFAULT 18
);

Explication: Ici, si aucune valeur n'est fournieAGElors d'une insertion, la valeur par défaut de 18 sera automatiquement attribuée.

Comment spécifier des contraintes dans SQL

Les contraintes peuvent être spécifiées lors du processus de création de table à l'aide de l'option CREATE TABLE déclaration. De plus, des contraintes peuvent être modifiées ou ajoutées aux tables existantes à l'aide de l'outilALTER TABLEdéclaration.

Syntaxe de création de contraintes :

organisation et architecture informatique

CREATE TABLE nom_table

(

colonne1 data_type [constraint_name]

trouver dans la carte C++

colonne2 type_données [nom_contrainte]

colonne3 data_type [constraint_name]

...

);

Nous pouvons également ajouter ou supprimer des contraintes après la création d'une table :

Exemple pour ajouter une contrainte :

ALTER TABLE Student  
ADD CONSTRAINT unique_student_id UNIQUE (ID);

Conclusion

Les contraintes SQL sont essentielles pour maintenir intégrité des données et assurer la cohérence des bases de données relationnelles. Comprendre et mettre en œuvre efficacement ces contraintes aidera à concevoir des bases de données robustes et sans erreurs. En tirant parti NOT NULL CLÉ PRIMAIRE UNIQUE VÉRIFICATION DE LA CLÉ ÉTRANGÈRE PAR DÉFAUT et INDEX vous pouvez vous assurer que votre base de données est optimisée pour précision et performance .

Créer un quiz