2009-11-17 69 views
2

我有以下類別結構:存儲類別(多個父節點)的數據模型

- Transport (10) 
    - Cars (5) 
     - Audi (2) 
     - BMW (3) 
     - ... 
     - Spare Parts (5) 
     - Audi (5) 
      - Audi glass (1) 
      - Carburetors (4) 
      - Mirrors 
      - ...   

    - Buses 

    - Spare Parts (5) 
     - Audi (5) 
     - Audi glass (1) 
     - Carburetors (4) 
     - Mirrors 
     - ... 
     - BMW 
     - Audi glass 
     - Carburetors 
     - Mirrors 
     - ... 
     - ... 

什麼是存儲這種數據結構的最佳方式?我嘗試過樹,但這是一個很大的重複,計數器無法正常工作。

我需要的是一種將這種結構存儲在數據庫中的方法。將項目放置在每個類別下。並有工作項目櫃檯。

回答

0

我會做

table TransportType (TTType(PK), Description) 
table Model (MType(PK), Description) 
table SparePart (SPNum(PK), Description) 
table SparePartAssignment (AKey(PK), TTType(FK), MType(FK), SPNum(FK)) 

希望幫助

好運拾音

0

您可以在SQL和事實上的數據庫服務器的問題不直接支持遞歸做查詢。看看here。 嵌套集模型是優雅的,易於在任何RDBMS中實現。

2

如果你確實知道你的節點有多深,那麼一組相關的表就可以正常工作。但是,如果節點需要能夠處理任何深度級別的數據,那麼您可能希望使設計更適合圍繞與其自身相關的表格。請參閱here以獲取更多解釋。

相關問題