在 SQL 中,约束(Constraints)是用于定义表中数据的规则的规范。这些规则帮助确保数据库的数据完整性,防止不符合预期的数据插入或更新。以下是几种常见的 SQL 约束类型:

1. 主键约束(Primary Key Constraint):
   - 用于唯一标识表中的每一行数据。
   - 主键列不能包含 NULL 值。
   - 一个表只能有一个主键。
   CREATE TABLE students (
       student_id INT PRIMARY KEY,
       student_name VARCHAR(255)
   );

2. 外键约束(Foreign Key Constraint):
   - 用于确保两个表之间的关系。
   - 外键通常是另一表的主键。
   - 外键可以包含 NULL 值,表示未知的关联。
   CREATE TABLE orders (
       order_id INT PRIMARY KEY,
       product_id INT,
       FOREIGN KEY (product_id) REFERENCES products(product_id)
   );

3. 唯一约束(Unique Constraint):
   - 确保列中的所有值都是唯一的,但允许 NULL 值。
   - 一个表可以有多个唯一约束。
   CREATE TABLE employees (
       employee_id INT PRIMARY KEY,
       employee_email VARCHAR(255) UNIQUE
   );

4. 检查约束(Check Constraint):
   - 用于确保列中的值满足指定的条件。
   - 可以定义多个检查条件。
   CREATE TABLE products (
       product_id INT PRIMARY KEY,
       product_price DECIMAL(10, 2) CHECK (product_price > 0)
   );

5. 默认约束(Default Constraint):
   - 为列定义默认值,当插入新行时,如果未提供该列的值,则使用默认值。
   CREATE TABLE customers (
       customer_id INT PRIMARY KEY,
       customer_status VARCHAR(10) DEFAULT 'Active'
   );

这些约束可帮助数据库维护数据完整性和一致性。在设计数据库时,合理使用约束是良好数据库实践的一部分。


转载请注明出处:http://www.zyzy.cn/article/detail/3342/SQL