SQL DEFAULT:默认约束
1年前 (2024-04-27)
SQL DEFAULT 约束用于给字段指定一个默认值,当使用 INSERT INTO 语句向表中插入数据时,如果没有为该字段提供具体的值,那么就使用这个默认值。
示例
下面的 SQL 语句将创建一个名为 website 的新表,该表包含五个字段,其中 uv 和 country 字段拥有 DEFAULT 约束,默认值分别为 10.0 和空字符串''
。如果 INSERT INTO 语句不为 uv 和 country 字段提供值,那么这两个字段将使用默认值 10.0 和空字符串''
。CREATE TABLE website (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(20) NOT NULL,
url VARCHAR(30),
age TINYINT UNSIGNED NOT NULL,
alexa INT UNSIGNED NOT NULL,
uv FLOAT DEFAULT '10.0',
country CHAR(3) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
);
如果已经创建了 website 表,则可以使用 ALTER TABLE 语句将 DEFAULT 约束添加到 uv 字段,如下所示:
ALTER TABLE website
MODIFY uv FLOAT DEFAULT '10.0';
删除默认约束
借助 ALTER TABLE 语句也可以删除默认约束,如下所示:
ALTER TABLE website
ALTER COLUMN uv DROP DEFAULT;