2016-05-01 129 views
1

我很困惑如何爲特定的三個實體 - 特別是它們之間的關係設計核心數據模型。核心數據模型 - 關係

「地點」是由名稱(字符串)和地址(字符串)組成的實體。

「腿」是由開始(地點)和結束(地點)組成的實體。

「路徑」是一個由任意數量的腿(腿)按特定順序組成的實體。

總之,路線由一個有序的腿列表組成,它們本身就是兩個地方之間的直線。

我將如何建模數據模型中Leg和Place實體之間的關係?每條腿都有兩個地方(開始和結束);任何地方都可以與無限數量的腿相關聯,無論是作爲開始還是結束。

回答

1
  1. 實體添加兩個關係,一個是startPlace,另一個用於endPlace,使它們的類型「爲了一個」

  2. 廣場實體添加兩個關係(legsByStartPlaceInverse和legsByEndPlaceInverse)並使其類型「To Many」

  3. 確保刪除規則是而不是「級聯」。

+0

好了,所以採用這種方法我想: 1.在路由實體添加型「一對多」的一個反比關係,所謂的「腿」,; 2.在Leg實體中添加一個名爲「routesByLegInverse」的類型爲「To Many」的關係。 看起來正確嗎? – protasm

+0

是的,路線和腿部實體有多對多的關係。 –

+0

謝謝,我試過你的解決方案,它似乎在我的項目中運行良好。 – protasm