📜  实体完整性约束 (1)

📅  最后修改于: 2023-12-03 14:53:36.321000             🧑  作者: Mango

实体完整性约束

什么是实体完整性约束?

实体完整性约束是指通过一系列规则来保证数据库中表的数据的完整性、正确性和有效性, 防止数据的非法修改、删除、添加使数据不一致、不完整的一种约束性约束.

为什么要使用实体完整性约束?

使用实体完整性约束可以有效地保证数据库中的数据的完整性、正确性和有效性. 减少了人工错误操作, 避免了数据冗余, 保证了数据的完整性, 提高了数据库的可靠性和安全性.

实体完整性约束的类型
  1. 主键约束(Primary Key Constraint):保证每一条记录都可以通过唯一的标识来区分,且主键不能为空.

  2. 外键约束(Foreign Key Constraint):保证在两个表之间的数据关系的完整性和一致性.

  3. 唯一约束(Unique Constraint):保证索引列中的每一行的数据在表中都是唯一的.

  4. 默认值约束(Default Constraint):确保即使在插入数据时未设置值,列中也有默认值.

  5. 检查约束(Check Constraint):限制插入数据的类型.

实体完整性约束的代码片段
主键约束

在创建表时,使用PRIMARY KEY约束来创建主键, 如下所示:

CREATE TABLE employee (
    id INT NOT NULL,
    name VARCHAR(30) NOT NULL,
    age INT NOT NULL,
    PRIMARY KEY (id)
);
外键约束

在创建表时,使用FOREIGN KEY约束来创建外键, 如下所示:

CREATE TABLE orders (
    order_id INT PRIMARY KEY,
    customer_id INT,
    FOREIGN KEY (customer_id) REFERENCES customer(customer_id)
);
唯一约束

在创建表时,使用UNIQUE约束来创建唯一约束, 如下所示:

CREATE TABLE employee (
    id INT NOT NULL UNIQUE,
    name VARCHAR(30) NOT NULL,
    age INT NOT NULL,
);
默认值约束

在创建表时,使用DEFAULT约束来创建默认值约束, 如下所示:

CREATE TABLE employee (
    id INT NOT NULL,
    name VARCHAR(30) NOT NULL,
    age INT NOT NULL DEFAULT 18,
    PRIMARY KEY (id)
);
检查约束

在创建表时,使用CHECK约束来创建检查约束, 如下所示:

CREATE TABLE employee (
    id INT NOT NULL,
    name VARCHAR(30) NOT NULL,
    age INT NOT NULL CHECK(age>0),
    PRIMARY KEY (id)
);