Les contraintes not-null et unique

Introduction aux bases de données relationnelles en SQL

Timo Grossenbacher

Data Journalist

La contrainte not-null

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

Que signifie NULL ?

  • inconnu
  • n'existe pas
  • non applicable
  • ...
Introduction aux bases de données relationnelles en SQL

Que signifie NULL ? 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

Ajouter ou retirer une contrainte not-null

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
);

Après la création de la table…

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 rester vrai pour tout état futur

Introduction aux bases de données relationnelles en SQL

Ajouter des contraintes unique

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...