Ограничение DEFAULT используется для установки значений по умолчанию при попытке вставить пустое (NULL) значение в столбец. Например:
Здесь значением по умолчанию для столбца college_country является Japan.
Если мы попытаемся сохранить значение NULL в столбце college_country, то значением станет Japan. Например:
Ограничение DEFAULT с ALTER TABLE
Мы также можем добавить ограничение DEFAULT к существующему столбцу с помощью оператора ALTER TABLE. Например:
SQL Server
Здесь значением по умолчанию для столбца college_country является Japan, если кто-то попытается вставить NULL.
Удалить ограничение DEFAULT
Мы можем удалить ограничение DEFAULT, используя оператор DROP. Например:
SQL Server, PostgreSQL, Oracle
Здесь мы удаляем ограничение DEFAULT из столбца college_country.
SQL:
CREATE TABLE Colleges (
college_id INT PRIMARY KEY,
college_code VARCHAR(20),
college_country VARCHAR(20) DEFAULT 'Japan'
);
Если мы попытаемся сохранить значение NULL в столбце college_country, то значением станет Japan. Например:
SQL:
-- Вставляем значение 'Japan' в столбец college_country
INSERT INTO Colleges (college_id, college_code)
VALUES (1, 'ARP76');
-- Вставляем значение 'UAE' в столбец college_country
INSERT INTO Colleges (college_id, college_code, college_country)
VALUES (2, 'JWS89', 'UAE');
Ограничение DEFAULT с ALTER TABLE
Мы также можем добавить ограничение DEFAULT к существующему столбцу с помощью оператора ALTER TABLE. Например:
SQL Server
SQL:
ALTER TABLE Colleges
ADD CONSTRAINT country_default
DEFAULT 'Japan' FOR college_country;
PostgreSQL
ALTER TABLE Colleges
ALTER COLUMN college_code SET DEFAULT 'Japan';
MySQL
ALTER TABLE Colleges
ALTER college_country SET DEFAULT 'Japan';
Oracle
ALTER TABLE Colleges
MODIFY college_country DEFAULT 'Japan';
Удалить ограничение DEFAULT
Мы можем удалить ограничение DEFAULT, используя оператор DROP. Например:
SQL Server, PostgreSQL, Oracle
SQL:
ALTER TABLE Colleges
ALTER COLUMN college_country DROP DEFAULT;
MySQL
ALTER TABLE Colleges
ALTER college_country DROP DEFAULT;