Les contraintes non nulles et uniques

Introduction aux bases de données relationnelles en SQL

Timo Grossenbacher

Data Journalist

La contrainte non nulle

  • Interdire les valeurs NULL dans une colonne spécifique
  • Doit être vrai pour l'état actuel
  • Doit être vrai pour tout état futur
Introduction aux bases de données relationnelles en SQL

Que signifie NULL ?

  • inconnue
  • n'existe pas
  • n'est pas applicable
Introduction aux bases de données relationnelles en SQL

Que signifie NULL ? Un exemple

CREATE TABLE students (
 ssn integer not null,
 lastname varchar(64) not null,
 home_phone integer,
 office_phone integer
);
NULL != NULL
Introduction aux bases de données relationnelles en SQL

Ajout ou suppression d’une contrainte non nulle

Lors de la création d'une table…

CREATE TABLE students (
 ssn integer not null,
 lastname varchar(64) not null,
 home_phone integer,
 office_phone integer
);

Une fois la table créée…

ALTER TABLE students 
ALTER COLUMN home_phone 
SET NOT NULL;
ALTER TABLE students 
ALTER COLUMN ssn 
DROP NOT NULL;
Introduction aux bases de données relationnelles en SQL

La contrainte unique

  • Interdire les doublons dans une colonne
  • Doit être vrai pour l'état actuel
  • Doit être vrai pour tout état futur

Introduction aux bases de données relationnelles en SQL

Ajout de contraintes uniques

CREATE TABLE table_name (
 column_name UNIQUE
);
ALTER TABLE table_name
ADD CONSTRAINT some_name UNIQUE(column_name);
Introduction aux bases de données relationnelles en SQL

Appliquons cela à la base de données.

Introduction aux bases de données relationnelles en SQL

Preparing Video For Download...