SQL 约束

约束是对表中的数据列强制执行的规则。这些约束用于限定添加到表中的数据类型。这保证了数据库中数据的准确性和可靠性。

约束可以是列级别,也可以是表级别。列级约束仅应用于一列,而表级约束应用于整个表。

以下是 SQL 中可用的一些最常用的约束。这些约束已经在SQL - RDBMS 概念一章中讨论过 ,但此时有必要对它们进行一些补充。

  • NOT NULL Constraint - 确保列不能有 NULL 值。
  • DEFAULT Constraint - 当添加数据时,没有指定改列的话,则使用此约束提供的默认的值。
  • UNIQUE Constraint - 确保列中的所有值都不同。
  • PRIMARY Key - 主键,是数据库表中的每一行/记录的唯一标识。
  • FOREIGN Key - 唯一标识任何其他数据库表中的行/记录。
  • CHECK Constraint - CHECK 约束确保列中的所有值都满足某些条件。
  • INDEX - 用于快速地从数据库创建和检索数据。

可以在使用 CREATE TABLE 语句创建表时指定约束项,或者即使在创建表之后也可以使用 ALTER TABLE 语句创建约束。

删除约束

可以使用带有 DROP CONSTRAINT 选项的 ALTER TABLE 命令删除之前定义的任何约束。

例如,要删除 EMPLOYEES 表中的主键约束,可以使用以下命令。

ALTER TABLE EMPLOYEES DROP CONSTRAINT EMPLOYEES_PK;

某些数据库管理工具可能提供用于删除某些约束的快捷方式。例如,要删除 Oracle 中某个表的主键约束,可以使用以下命令。

ALTER TABLE EMPLOYEES DROP PRIMARY KEY;

某些管理工具允许我们禁用约束。我们可能希望暂时禁用约束,然后再启用它,而不是从数据库中永久删除约束。


完整性约束

完整性约束用于确保关系数据库中数据的准确性和一致性。数据完整性是通过参照完整性的概念在关系数据库中处理的。

参照完整性 (RI) 中包含多种类型的完整性约束。这些约束包括主键、外键、唯一约束和上面提到的其他约束。

查看笔记

扫码一下
查看教程更方便