2010-08-17 134 views
2

我正在考慮設計數據庫的最佳方式,給出以下情況。MySQL數據庫設計問題

  • 有超過1000個酒店房間單位。
  • 每個酒店房間單位都有一個約100個個別類型的物品,並附有數量的清單。庫存是每個酒店房間的標準。但每件商品的數量可以更改。

例如3個咖啡杯,2條毛巾等

我還需要跟蹤丟失或損壞的物品各單位...

什麼是設計數據庫的最佳方式?

有每個唯一項目的表,其數量,其屬性ID,其每個屬性ID丟失和損壞的項目?

有沒有更好的方法來做到這一點?房間

回答

3

表 表項 表包含引用客房和物品:

Rooms 
Number ID 
101  1 
102  2 

Items 
Name ID NumberLost NumberDamaged 
Lamp 1 3   0 
Chair 2 0   1 

Contains 
RoomID ItemID Quantity 
1  1  1 
1  2  3 
2  1  1 
2  2  4 
+0

你可以修改這個來增加額外的信息,但是這應該給你一個關於如何構造關係的概念。 – fredley 2010-08-18 08:26:22

+0

我真的很感激答案。非常感謝! – Gamak 2010-08-18 19:08:49

2
Room[roomID, roomNumber, roomSize] 
Item[itemID, itemPrice, itemName] 
RoomItem[roomID, itemID, quantity, damaged] 

有房項目(稱爲RoomItem)一個多一對多的關係。然後可以具體說明房間中物品的數量和房間中損壞的物品的數量。

+0

+1特別用於存儲對RoomItem的損壞數量。 (還應該包括丟失的數量。) – 2010-08-18 11:10:18