SQL DEFAULT 约束


SQL DEFAULT 约束

SQL DEFAULT 约束是在 SQL 数据表中定义的一种约束。当在表中创建一个列时,DEFAULT 约束可设置默认值,以在列中插入记录时自动提供该值。如果在插入值时该列未指定值,则默认值将用作默认值。

创建 DEFAULT 约束

在 SQL 中创建默认约束非常简单。只需使用 ALTER TABLE 语句和 ADD CONSTRAINT 子句并在 CONSTRAINT 子句中指定该约束的名称、要添加约束的列和该列的默认值即可。以下是语法:

ALTER TABLE table_name
ADD CONSTRAINT constraint_name DEFAULT default_value FOR column_name;

例如,下面的 SQL 语句将在名为 “persons” 的表中添加一个新的 DEFAULT 约束:

ALTER TABLE persons
ADD CONSTRAINT gender_default DEFAULT 'male' FOR gender;

上面的语句创建了一个名为 “gender_default” 的 CONSTRAINT 约束,它是应用于 “persons” 表的 “gender” 列的 DEFAULT 约束,并将 “male” 作为默认值。

修改 DEFAULT 约束

要修改 DEFAULT 约束,需要使用 ALTER TABLE 语句和 DROP CONSTRAINT 和 ADD CONSTRAINT 子句。以下是语法:

ALTER TABLE table_name
DROP CONSTRAINT constraint_name;

ALTER TABLE table_name
ADD CONSTRAINT constraint_name DEFAULT default_value FOR column_name;

例如,下面的 SQL 语句将修改名为 “gender_default” 的默认约束:

ALTER TABLE persons
DROP CONSTRAINT gender_default;

ALTER TABLE persons
ADD CONSTRAINT gender_default DEFAULT 'female' FOR gender;

上面的语句删除了名为 “gender_default” 的约束,然后在 “persons” 表的 “gender” 列上重新创建了 “gender_default” 约束。

注意事项

以下是一些有关 SQL DEFAULT 约束的注意事项:

  • DEFAULT 约束仅在插入缺少值时才应用。
  • 如果在插入新记录时列指定了值,则默认值不会发挥作用。
  • 如果该列具有 NOT NULL 约束,则必须指定值或默认值,否则将出现错误。
  • 要删除 DEFAULT 约束,必须知道该约束的名称,并使用 ALTER TABLE 语句中的 DROP CONSTRAINT 子句。如果未知约束的名称,则不可能进行删除操作。
  • 记得在每条语句结束时使用分号。

结论

SQL DEFAULT 约束是 SQL 数据表中一种有用的约束类型。创建默认约束很简单,只需使用 ALTER TABLE 语句上的 ADD CONSTRAINT 子句并在 CONSTRAINT 子句中指定该约束的名称、要添加约束的列以及该列的默认值即可。该约束的名称用于引用该约束并在更新和删除操作中进行操作。通过使用 DEFAULT 约束,可以将默认值设置为某些列,这使得您可以更轻松地插入新数据记录。