2013-05-29 230 views
-3

我正在設計一個咖啡廳的訂單。數據庫設計

我需要將所有咖啡存儲在數據庫中,以便網站可以在用戶想要訂購時檢索數據。

我在設計數據庫時遇到問題。如果我有飲料一張桌子和一個臨時演員(如棉花糖)我怎麼能選擇什麼羣衆演員每個飲料會對例如一個咖啡可以有糖和牛奶,但沒有檸檬

+--------------------+ 
| Drink Name   | 
+--------------------+ 
| Colombian   | 
| French_Roast  | 
| Espresso   | 
| Colombian_Decaf | 
| French_Roast_Decaf | 
+--------------------+ 



    +--------------------+ 
    | Extra Name   | 
    +--------------------+ 
    | Sugar    | 
    | Milk    | 
    | Lemon    | 
    | bitters    |   
    +--------------------+ 

回答

1

你需要一個第三個表:

Table 1 "Drinks" - ID,Name 
Table 2 "Extras" - ID,Name 
Table 3 "Combos" - drinks_id,extras_id 
+0

所以我會創造一切可能的組合,例如flatwhite,牛奶flatwhite,糖快報,糖嗎?謝謝 – user2130577

0

1的飲料可以有很多額外的 加1可以屬於很多飲料 這意味着你有很多一對多的關係,這就需要第三個表:

create table tbl_drinks2extras (id int auto_increment primiray key,drink_id int not null, extra_id int not null); 

要完成databasedesign:一個ID添加到所有的表:

Drinks: id, drink_name, price, ...