2012-11-05 41 views
0

我有一個表(表A),它與主鍵'車輛','引擎','傳輸'連接3個其他表我希望能夠分配一個或多個部分我的計劃是製作一個零件表(tableB),同時還有主鍵「車輛」,「發動機」,「發動機」和「發動機」 」,‘發送’和我想能夠插入例如:複合外鍵引用一個或多個列

  • 4844, null, null到零件僅分配給‘車輛’或
  • 4844, 240, null指定一部分'只有這輛車與這個引擎'。

有什麼方法可以在數據庫級別實施完整性,

  1. 填充在tableB中的字段必須引用tableA中的字段。
  2. 至少必須填寫其中一個字段。
  3. 該選項是否存在不將數據全部插入到它們中?

回答

0
  1. 閱讀數據模型模式。有好幾本好書(乾草,福勒,西爾弗斯頓,布拉哈)和乾草很好地涵蓋了這個東西

  2. 如果你想要做這種東西,請使用像檢查約束的postgres真正的數據庫。對於你的問題2和3,這很容易通過檢查來解決。