Skip to content

Latest commit

 

History

History
37 lines (25 loc) · 1.55 KB

30.md

File metadata and controls

37 lines (25 loc) · 1.55 KB

DBMS 中的映射约束

原文: https://beginnersbook.com/2015/04/mapping-constraints-in-dbms/

映射约束可以用映射基数来解释:

映射基数

一对一:实体集 A 的一个实体可以与实体集 B 中的至多一个实体相关联,实体集 B 中的一个实体可以与实体集 A 中的至多一个实体相关联。

一对多:实体集 A 的一个实体可以与实体集 B 的任意数量的实体相关联,并且实体集 B 中的一个实体可以与实体集中 A 的至多一个实体相关联。

多对一:实体集 A 的一个实体可以与实体集 B 中的至多一个实体相关联,并且实体集 B 中的一个实体可以与实体集 A 的任意数量的实体相关联。

多对多:实体集 A 的一个实体可以与实体集 B 的任意数量的实体相关联,并且实体集 B 中的一个实体可以与实体集 A 的任意数量的实体相关联。

在数据库中创建表时,我们可以使用这些约束。

示例

CREATE TABLE Customer (
customer_id int PRIMARY KEY NOT NULL,
first_name varchar(20),
last_name varchar(20)
);

CREATE TABLE Order (
order_id int PRIMARY KEY NOT NULL,
customer_id int,
order_details varchar(50),
constraint fk_Customers foreign key (customer_id) 
       references dbo.Customer
);

假设客户下订单不止一次,上述关系代表一对多关系。同样,我们可以根据需求实现其他映射约束。