目录

SQL DEFAULT 约束


SQL 默认约束

这个DEFAULT约束用于为列设置默认值。

如果未指定其他值,则默认值将添加到所有新记录中。


创建表时的 SQL 默认值

以下SQL设置了DEFAULT创建#{1}#表时#{0}#列的值:

我的 SQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    City varchar(255) DEFAULT 'Sandnes'
);

这个DEFAULT约束也可以通过使用诸如此类的功能来插入系统值 GETDATE():

CREATE TABLE Orders (
    ID int NOT NULL,
    OrderNumber int NOT NULL,
    OrderDate date DEFAULT GETDATE()
);

ALTER TABLE 上的 SQL 默认值

创建一个DEFAULT当表已创建时,对 "City" 列进行约束,请使用以下 SQL:

MySQL:

ALTER TABLE Persons
ALTER City SET DEFAULT 'Sandnes';

SQL服务器:

ALTER TABLE Persons
ADD CONSTRAINT df_City
DEFAULT 'Sandnes' FOR City;

MS Access:

ALTER TABLE Persons
ALTER COLUMN City SET DEFAULT 'Sandnes';

甲骨文:

ALTER TABLE Persons
MODIFY City DEFAULT 'Sandnes';

删除默认约束

删除一个DEFAULT约束,使用以下 SQL:

MySQL:

ALTER TABLE Persons
ALTER City DROP DEFAULT;

SQL Server / Oracle / MS 访问:

ALTER TABLE Persons
ALTER COLUMN City DROP DEFAULT;

SQL服务器:

ALTER TABLE Persons
ALTER COLUMN City DROP DEFAULT;