正确答案是:C: Foreign key 外键
### 专业分析
在关系型数据库中,不同类型的键有各自不同的用途和特性:
1. **Candidate Key 候选键**
- 定义:候选键是表中能够唯一标识每一行的列或列的组合。
- 特点:一个表可以有多个候选键,但其中仅有一个会被选为主键。
2. **Composite Key 复合键**
- 定义:复合键是由两个或多个列组成的键,用于唯一标识表中的行。
- 特点:通常在单一列不足以唯一标识记录时使用。
3. **Foreign Key 外键**
- 定义:外键是一个表中的一列或多列,它在另一个表中作为主键使用。
- 用途:用于建立和保持两个表之间的数据一致性和完整性。
- 特点:提供表与表之间的连接和关系,确保引用完整性。
4. **Surrogate Key 代理键**
- 定义:代理键是一个被引入以唯一标识表中每一行的人工键,通常是自动生成的数值。
- 特点:与数据无关,通常由数据库系统生成。
#### 结论
- **外键 (Foreign Key)** 是用于提供到另一个实体(表)的链接。它通过引用另一个表的主键,定义了两个表之间的关系,从而确保引用完整性。
### 示例
假设有两个相关表:
- **Customers** 表
- CustomerID (主键)
- CustomerName
- **Orders** 表
- OrderID (主键)
- CustomerID (外键)
- OrderDate
在此示例中,Orders 表中的 CustomerID 是一个外键,它引用了 Customers 表中的 CustomerID 主键。这种关系确保每个订单都关联到特定的客户。