在创建表时,可以使用约束来定义表中数据的规则和限制。以下是SQL中一些常见的约束类型:
- PRIMARY KEY约束:用于定义表中的主键,唯一标识表中的每一行数据。主键必须是唯一的,且不能为空。
CREATE TABLE students ( id INT PRIMARY KEY, name VARCHAR(50) );
- FOREIGN KEY约束:用于定义表中的外键,用来建立表与表之间的关联关系。
CREATE TABLE orders ( order_id INT PRIMARY KEY, customer_id INT, FOREIGN KEY (customer_id) REFERENCES customers(cust_id) );
- NOT NULL约束:用于限制列的值不为空。
CREATE TABLE employees ( emp_id INT PRIMARY KEY, emp_name VARCHAR(50) NOT NULL );
- UNIQUE约束:用于确保列的值在表中是唯一的。
CREATE TABLE products ( product_id INT PRIMARY KEY, product_name VARCHAR(50) UNIQUE );
- CHECK约束:用于定义列的取值范围或条件。
CREATE TABLE students ( id INT PRIMARY KEY, age INT CHECK (age >= 18) );
- DEFAULT约束:用于为列指定默认值。
CREATE TABLE employees ( emp_id INT PRIMARY KEY, emp_name VARCHAR(50), emp_salary INT DEFAULT 0 );
通过使用这些约束,可以有效地保证表中数据的完整性和一致性。