0

我有一个表(tableA),它使用主键“车辆”、“引擎”、“传输”连接其他 3 个表我希望能够将部件分配给其中一个或多个,例如“仅此车辆”或“仅带有此发动机的车辆”或“带有此发动机的任何车辆”

我的计划是有一个零件表(tableB),其中还包含主键“车辆”、“引擎”、“传输”,我希望能够插入例如:

  • 4844, null, null仅将零件分配给“车辆”或
  • 4844, 240, null将零件分配给“仅配备此发动机的此车辆”。

有什么方法可以在数据库级别强制执行完整性。

  1. tableB中填写的字段必须引用tableA中的字段。
  2. 至少必须填写其中一个字段。
  3. 是否存在不将数据全部插入其中的选项?
4

1 回答 1

0
  1. 阅读数据模型模式。有几本好书(干草,福勒,西尔弗斯顿,等等),干草很好地涵盖了这些东西

  2. 如果你想做这类事情,请使用像 postgres 这样具有检查约束的真实数据库。对于您的问题 2 和 3,这很容易通过检查来解决。

于 2012-11-05T08:04:00.083 回答