oracle 表约束
时间: 2023-10-21 11:28:44 浏览: 115
Oracle表空间
Oracle 表约束是用来保证数据完整性和一致性的规则。它们定义了对表中数据的限制,以确保数据的有效性和一致性。
在 Oracle 中,常见的表约束包括:
1. 主键约束(Primary Key Constraint):主键约束唯一标识表中的每一行数据,并确保主键列的值不为空。
2. 唯一约束(Unique Constraint):唯一约束保证表中指定列或列的组合的值是唯一的,但可以包含空值。
3. 外键约束(Foreign Key Constraint):外键约束定义了表之间的关系,保证一个表中的外键列的值必须在另一个表的主键列中存在。
4. 非空约束(Not Null Constraint):非空约束确保指定列的值不为空。
5. 检查约束(Check Constraint):检查约束定义了对表中数据的额外条件,只有满足条件的数据才能插入或更新到表中。
要在创建表时添加约束,可以使用 CREATE TABLE 语句的 CONSTRAINT 子句。例如:
```sql
CREATE TABLE employees (
emp_id NUMBER PRIMARY KEY,
emp_name VARCHAR2(50) NOT NULL,
dept_id NUMBER,
salary NUMBER,
CONSTRAINT fk_dept FOREIGN KEY (dept_id) REFERENCES departments(dept_id),
CONSTRAINT chk_salary CHECK (salary > 0)
);
```
这个例子创建了一个名为 employees 的表,其中包含主键约束(emp_id 列)、非空约束(emp_name 列)、外键约束(dept_id 列引用 departments 表的 dept_id 列)和检查约束(salary 列的值必须大于 0)。
除了在创建表时定义约束,还可以使用 ALTER TABLE 语句来添加、修改或删除约束。
阅读全文