Oracle
 sql >> Datenbank >  >> RDS >> Oracle

So fügen Sie eine Nicht-Null-Einschränkung für Spalten hinzu, die Nullwerte enthalten

Sie können eine nicht validierte Einschränkung hinzufügen – sie wird nicht nach vorhandenen Zeilen suchen, aber nach neuen oder aktualisierten Zeilen suchen.

ALTER TABLE mytable MODIFY mycolumn NOT NULL NOVALIDATE;

Beachten Sie jedoch, dass Sie eine vorhandene Zeile nur dann aktualisieren können, wenn sie die Einschränkung erfüllt.

Beachten Sie auch den Nachteil, dass der Optimierer diese Einschränkung bei der Erstellung seiner Pläne nicht ausnutzen kann - er muss davon ausgehen, dass einige Zeilen möglicherweise immer noch eine Null enthalten.