企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# DBMS 中的映射约束 > 原文: [https://beginnersbook.com/2015/04/mapping-constraints-in-dbms/](https://beginnersbook.com/2015/04/mapping-constraints-in-dbms/) 映射约束可以用[映射基数](https://beginnersbook.com/2015/04/cardinality-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 ); ``` 假设客户下订单不止一次,上述关系代表**一对多**关系。同样,我们可以根据需求实现其他映射约束。