在SQL中,可以使用约束(constraint)来限定数据范围。以下是一些常见的约束方式:
主键约束(Primary key constraint):用于限定某一列或列组合的值在表中是唯一的,且不能为空。主键可以用于标识表中的每一行,常用于创建关联关系。 示例:CREATE TABLE students (id INT PRIMARY KEY, name VARCHAR(50));
唯一约束(Unique constraint):用于限定某一列或列组合的值在表中是唯一的,但可以为空。 示例:CREATE TABLE employees (id INT UNIQUE, email VARCHAR(50));
非空约束(Not null constraint):用于限定某一列的值不能为空。 示例:CREATE TABLE products (id INT, name VARCHAR(50) NOT NULL);
外键约束(Foreign key constraint):用于限定某一列与其他表的关联关系。外键约束确保了数据的完整性,只允许插入或更新值为另一个表中已存在的键值。 示例:CREATE TABLE orders (id INT PRIMARY KEY, product_id INT, FOREIGN KEY (product_id) REFERENCES products(id));
检查约束(Check constraint):用于限制某一列的取值范围,可以使用逻辑表达式或自定义函数来实现。 示例:CREATE TABLE employees (id INT, age INT CHECK (age > 18));
这些约束可以在CREATE TABLE语句中使用,也可以在ALTER TABLE语句中添加到已存在的表中。约束可以确保数据的完整性和一致性,有助于避免插入无效或不符合规定的数据。