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

Comment ajouter une contrainte non nulle sur une colonne contenant des valeurs nulles

Vous pouvez ajouter une contrainte non validée - elle ne regardera pas les lignes existantes, mais elle sera vérifiée pour toutes les lignes nouvelles ou mises à jour.

ALTER TABLE mytable MODIFY mycolumn NOT NULL NOVALIDATE;

Sachez simplement que vous ne pourrez pas mettre à jour une ligne existante à moins qu'elle ne satisfasse la contrainte.

Soyez également conscient de l'inconvénient que l'optimiseur ne pourra pas tirer parti de cette contrainte pour faire ses plans - il doit supposer que certaines lignes peuvent encore avoir une valeur nulle.