2017-08-09 174 views
-1

我正在嘗試開發一個咖啡店的管理面板。 我想以系統的方式顯示菜單。 示例咖啡濃咖啡,拿鐵......等等。 三明治 - 北極光,孟買三明治和洙.. 我想給管理員添加新的類別說漢堡,並根據該類型的漢堡可用。 我正在努力爲這個系統找到正確的解決方案。 現在,我有表餐廳菜單的數據庫設計

Menu 
CategoryId int(50), 
ParentId int(50), 
Name varchar(100) 

我能夠在前端顯示菜單像我想

like this

但我不能想出一個辦法,使管理員添加新不中斷數據庫設計的類別

回答

0

您只需要兩個表。

1 - 表分類

CategoryId int(50), 
CategoryName varchar(100) 

這將具有以下數據

1 - 咖啡

2 - 沙拉

3 - 邊

2 - 表小類

SubcategoryId int(50), 
CategoryId int(50), 
SubCategoryName varchar(100) 

這將具有這樣

1數據 - 1 - ESPRESSO

2 - 1 - AMERICANO

3 - 2 - 超級人

4 - 3 - 綠巨人

etc

1

2表,fk驗證爲了方便。

Create table m_category (id int, 
         cat_name varchar(30), 
         constraint pk_catid primary key (id)); 

create table m_item (id int, 
        cat_id int, 
        item_name varchar(30), 
        constraint fk_catid 
         foreign key (cat_id) 
         references m_category(id)); 
+0

謝謝!它現在清除:) –

0

您的回答是here

您需要兩個表格,一個用於主題,另一個用於項目。您應該將每個項目與subject_id關聯到其父項!就這樣簡單。

+0

請注意使用正確的大小寫和標點符號,並避免txtspk在這裏。這會讓你的答案更具可讀性。 – halfer

0

您只需要1個表格, 您可以在其中存儲菜單和子菜單以及子子菜單 的所有數據,您需要將數據存儲在categoryId和parentId的表格基礎中。 類別ID, 的ParentId, 名稱

所有的菜單中的parentId即咖啡 - 咖啡有0有1成的categoryId和咖啡 - 咖啡具有兩個子菜單A,B,則A,B有1個爲的ParentId。