Нет значения по умолчанию, если вы не укажете его (т.е. если вы не определите «ограничение по умолчанию» для рассматриваемого столбца).
Вот пример добавления значения по умолчанию для существующего столбца:
ALTER TABLE dbo.customer ALTER COLUMN contactname SET DEFAULT 'Unknown'
Вот пример создания таблицы по умолчанию:
CREATE TABLE Books (
ID SMALLINT NOT NULL,
Name VARCHAR(40) NOT NULL,
PubID SMALLINT NOT NULL DEFAULT 0
)
Хорошей практикой является объявление ВСЕХ столбцов "не нулевыми" и предоставление соответствующих ограничений по умолчанию.
В приведенном выше примере с «книгами», если вы «вставляете» без указания PubID, PubID будет равен нулю.
В том же примере, если вы "вставите" без указания идентификатора или имени ... вы получите ошибку.
Если вы хотите, чтобы MySQL автоматически назначал идентификатор, используйте вместо этого следующий синтаксис:
CREATE TABLE Books (
ID SMALLINT NOT NULL AUTO_INCREMENT,
Name VARCHAR(40) NOT NULL,
PubID SMALLINT NOT NULL DEFAULT 0
)