SQL DEFAULTограничения

Ограничение DEFAULT используется для вставки значения по умолчанию в столбец.

Если другое значение не указано, значение по умолчанию будет добавлено во все новые записи.

Синтаксис

1. Определите ограничение DEFAULT при создании таблицы:

CREATE TABLE 表名 (
    列名 数据类型 DEFAULT 默认值
);

2. Добавьте ограничение DEFAULT к существующей таблице:

ALTER TABLE 表名
ALTER COLUMN 列名 SET DEFAULT 默认值;

Пример

1. Определите ограничение DEFAULT при создании таблицы

Пример

CREATE TABLE Employees (
    EmployeeID INT PRIMARY KEY,
    FirstName VARCHAR(50),
    LastName VARCHAR(50),
    HireDate DATE DEFAULT GETDATE(), -- Значение по умолчанию — текущая дата
    Salary DECIMAL(10, 2) DEFAULT 0.00 -- Значение по умолчанию — 0.00
);

2. Добавить ограничение DEFAULT к существующей таблице

ALTER TABLE Employees
ALTER COLUMN Salary SET DEFAULT 0.00;

3. Использование значений по умолчанию при вставке данных

INSERT INTO Employees (EmployeeID, FirstName, LastName)
VALUES (1, 'John', 'Doe');

Если для HireDate и Salary не указаны значения, база данных автоматически использует значения по умолчанию.


Удаление ограничения DEFAULT

Способ удаления различается в разных базах данных:

1、SQL Server

ALTER TABLE 表名
DROP CONSTRAINT 约束名;

2、MySQL

ALTER TABLE 表名
ALTER COLUMN 列名 DROP DEFAULT;

3、Oracle

ALTER TABLE 表名
MODIFY 列名 DEFAULT NULL;

4、MS Access

ALTER TABLE 表名
ALTER COLUMN 列名 DROP DEFAULT;

Примечания

  • DEFAULTЗначение ограничения должно быть совместимо с типом данных столбца.

  • Если столбец определён какNOT NULLи значение по умолчанию не указано, при вставке данных необходимо явно указать значение, иначе будет выдана ошибка.

  • Значением по умолчанию может быть константа, выражение или функция (например,GETDATE())。

Применимые сценарии

  • Установите текущую дату в качестве значения по умолчанию для столбца даты.

  • Установите начальное значение для числового столбца (например,0)。

  • Установите статус по умолчанию для столбца статуса (например,'Active')。

Другие расширения