当前位置:首页 > 行业动态 > 正文

oracle数据库中的五种约束类型是什么

Oracle数据库中的五种约束类型包括:非空(NOT NULL)约束、唯一(UNIQUE)约束、主键(PRIMARY KEY)约束、外键(FOREIGN KEY)约束和检查(CHECK)约束。

在Oracle数据库中,有五种主要的约束类型,它们用于确保数据的完整性和准确性,这些约束可以在创建表时定义,也可以在表创建后添加,以下是这五种约束类型的详细说明:

1. NOT NULL

NOT NULL约束确保某列不能接受NULL值,如果在尝试插入或更新NULL值时,将引发错误。

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int
);

在这个例子中,ID和LastName字段不能接受NULL值。

2. UNIQUE

UNIQUE约束确保某列的每行都具有唯一的值,如果尝试插入重复的值,将引发错误。

CREATE TABLE Persons (
    ID int UNIQUE,
    LastName varchar(255),
    FirstName varchar(255),
    Age int
);

在这个例子中,ID字段的值必须是唯一的。

3. PRIMARY KEY

PRIMARY KEY约束是一种特殊的NOT NULL和UNIQUE约束,它确保某列(或两列的组合)的值是唯一的,且不能接受NULL值,一个表只能有一个主键。

CREATE TABLE Persons (
    ID int PRIMARY KEY,
    LastName varchar(255),
    FirstName varchar(255),
    Age int
);

在这个例子中,ID字段是主键,它的值必须是唯一的,且不能接受NULL值。

4. FOREIGN KEY

FOREIGN KEY约束用于防止在一个表中存在另一个表中没有的值,外键可以是单个列,也可以是多个列的组合。

CREATE TABLE Orders (
    OrderID int PRIMARY KEY,
    PersonID int,
    FOREIGN KEY (PersonID) REFERENCES Persons(ID)
);

在这个例子中,Orders表中的PersonID字段是一个外键,它引用了Persons表的ID字段,这意味着,你不能在Orders表中插入一个在Persons表中不存在的PersonID。

5. CHECK

CHECK约束用于限制列中的值的范围,如果尝试插入或更新不在指定范围内的值,将引发错误。

CREATE TABLE Persons (
    ID int PRIMARY KEY,
    LastName varchar(255),
    FirstName varchar(255),
    Age int CHECK (Age > 18)
);

在这个例子中,Age字段的值必须大于18。

0