При создании таблицы имеет ли смысл иметь столбец по умолчанию равным 0 и сделать его пустым? - PullRequest
0 голосов
/ 11 апреля 2019

Я просматриваю старый код SQL сотрудников и понимаю его. Зачем им устанавливать новый столбец по умолчанию 0, но сделать его нулевым. Или в этом случае зачем вообще ставить NULL. Если вы не добавите его, он уже не примет NULL?

CREATE TABLE Inventory(

Amount INT DEFAULT ((0)) NULL,   --why not just write DEFAULT(0) with no null?
Type   INT DEFAULT ((0)) NOT NULL
)

1 Ответ

2 голосов
/ 11 апреля 2019

Обычно, когда по умолчанию используется значение 0, столбец имеет значение NOT NULL.

Но это позволяет установить для столбца значение NULL позднее вобработка.Могут быть случаи, когда это полезно.Например, если строка представляет элемент, а столбец - количество элементов, участвующих в чем-либо.Тогда 0 может означать, что предметов нет.И NULL может означать, что элемент (мягко) удален.

Выше приведено только для размышления.Лично у меня был бы отдельный флаг для мягкого удаления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...