Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment ajouter une colonne non nulle et une contrainte de vérification sur une ligne dans Oracle 11g ?

Rouler le NOT NULL contrainte dans le CHECK contrainte :

ALTER TABLE FOO_AUTHORS 
  ADD PUBLICATION_PERIOD_DAYS INTEGER DEFAULT 1
  CONSTRAINT publicationPeriodDays
  CHECK ( PUBLICATION_PERIOD_DAYS IS NOT NULL AND PUBLICATION_PERIOD_DAYS > 0 );

Les lignes existantes auront leur PUBLICATION_PERIOD_DAYS défini sur la valeur par défaut.