Определение столбца как NOT NULL
является предпочтительным подходом.Например, в представлении словаря данных DBA_TAB_COLS
, ALL_TAB_COLS
и USER_TAB_COLS
указывается, что столбец не является NULLABLE
.Это также был бы традиционный подход, поэтому будущие разработчики с большей вероятностью ожидают, что ограничения NOT NULL
определены для столбцов, которые не могут быть NULL
.
Так же, как вы можете определить ограничения UNIQUE
вместе сОграничения NOT NULL
вместо создания ограничений PRIMARY KEY
можно определить ограничения CHECK
вместо ограничений NOT NULL
.Оба подхода будут работать одинаково с функциональной точки зрения.Но представления словаря данных будут отображать эти подходы по-разному, поэтому инструменты, использующие словарь данных, могут вести себя немного иначе.А традиционные подходы с большей вероятностью будут тем, что будущие разработчики увидят и ожидают, а не будут удивлены.