Les contraintes

2025-09-12 11:14:07 +02:00
parent 2346f0cd39
commit 26dbcf44a5
3 changed files with 57 additions and 0 deletions

1
bdd.md

@@ -86,6 +86,7 @@ RDBMS
- [DATA MANIPULATION LANGAGE](dml) (DML)
- [DATA CONTROL LANGAGE](dcl) (DCL)
- [TRANSACTION CONTROL LANGAGE](tcl) (TCL)
- Les [contraintes](contraintes)
- Les [jointures](jointure)
- Les [déclencheurs](trigger)
- Les [vues](vues)

41
contraintes.md Normal file

@@ -0,0 +1,41 @@
# Contraintes
> Une contrainte est une règle appliquée à une table de base de données afin de garantir lintégrité et la cohérence des données.
Les contraintes permettent :
- déviter les incohérences,
- de garantir la validité des informations,
- dautomatiser certaines règles métier.
## Contrainte NOT NULL
`NOT NULL`Empêche une colonne de contenir une valeur nulle.
## Contrainte d'unicité
`UNIQUE` Garantit que toutes les valeurs dune colonne (ou dun ensemble de colonnes) sont uniques.
Une table peut contenir plusieurs contraintes UNIQUE, mais une seule clé primaire.
En SQL standard, la valeur NULL est considérée comme « inconnue » et nest jamais égale à une autre valeur même à un autre NULL.
Dans une colonne avec une contrainte UNIQUE, plusieurs lignes peuvent contenir NULL sans violer la contrainte.
## Clé primaire
`PRIMARY KEY` Identifie de manière unique chaque ligne dune table. Implique automatiquement NOT NULL et UNIQUE.
Une table ne peut avoir quune seule clé primaire (mais composée de plusieurs colonnes si besoin).
## Clé étrangère
`FOREIGN KEY` Définit une relation entre deux tables. Garantit que la valeur existe dans la table de référence (intégrité référentielle).
## Contrôle
`CHECK` Permet de définir une condition logique sur une colonne ou plusieurs colonnes.
## Valeur par défaut
`DEFAULT` Associe une valeur par défaut si aucune nest fournie lors de linsertion

@@ -27,3 +27,18 @@ La commande ALTER TABLE en SQL permet de modifier une table existante. Idéal po
```sql
ALTER TABLE chauffeur;
```
### Ajouter une colonne
```sql
ALTER TABLE chauffeur
ADD permis text;
```
### Supprimer une colonne
```sql
ALTER TABLE chauffeur
DROP COLUMN permis;
```