Pen*_*ica 6 sql database foreign-keys relational-database
任何人都可以提供一些示例,说明在 SQL 数据库中何时将一对一关系保留在同一个表上是更好的选择,而何时将它们放在单独的表上更有意义?
当您有多个实体,它们都必须能够充当另一个实体的外键,并且“几个实体”既有公共属性又有唯一属性,并且您希望对唯一属性有 NOT NULL 约束(或者不那么重要)不想要一堆不适用于其他实体的唯一属性的 NULL 值)。即使您没有唯一/公共属性并且不关心 NULL 值,如果您希望每个子类型表以及超类型表都有单独的外部约束,您可能仍然希望这样做。这种策略称为超类型/子类型建模。
让我举一个例子。
人们
教师
学生
正如您所看到的,教师和学生可以拥有一个用于某些属性的通用表,并且每个人都可以拥有自己的 NOT NULL 唯一属性。此外,您可以将人员、教师和学生加入到其他表并保持引用完整性。
另一个应用程序“可能”是,如果您为每条记录拥有单独的数据库,其中一个记录有一些属性,另一个记录有一些属性,但是,我从未这样做过。
| 归档时间: |
|
| 查看次数: |
1338 次 |
| 最近记录: |