MySQL DataBase设计问题

时间:2010-08-17 23:33:28

标签: sql mysql database database-design data-modeling

考虑到以下情况,我正在考虑设计数据库的最佳方法。

  • 酒店客房超过1000间。
  • 每个酒店房间单位都有一份约100种不同类型物品的清单,附有数量。库存是每个酒店房间的标准。但是每个项目的数量都可以改变。

例如3个咖啡杯,2个毛巾等。

我还需要追踪每个单位丢失或损坏的物品......

设计数据库的最佳方法是什么?

每个属性ID都有一个表,其中包含每个唯一商品,其数量,属性ID,丢失和损坏的商品?

有更好的方法吗?

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:2)

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

与房间和物品(称为RoomItem)有多对多的关系。然后可以具体说明房间中物品的数量和房间中的损坏物品。