天天看點

【資料庫設計-3】菜單設計

場景

我們在使用資料庫時,經常會遇到菜單選項,比如個人資訊表中有:

“性别”:男、女;

“學曆”:大專以下、大專、大學、碩士及以上;

“英語等級”:英語四級、英語六級、專業八級;

等等;

這些菜單選項肯定需要在資料庫中進行維護,當資料表很多時,菜單選項可能都會達到上百個,該如何設計呢?

下面将講解設計方法。

(設計方法不唯一,本人總結的也不代表最好的,僅供參考)。

資料表設計

總共包含4個表,分别如下:

1. 

【資料庫設計-3】菜單設計

2.

【資料庫設計-3】菜單設計

3。

【資料庫設計-3】菜單設計

4.

【資料庫設計-3】菜單設計

具體示例

1. 

【資料庫設計-3】菜單設計

若是想知道“張三”的性别和學曆,需要經過下面的步驟(以查詢性别為例):

步驟1: 在表名表中查詢table_name_eng為staff_info對應記錄的table_id,本例中為table_id=4;

步驟2: 在域名表中查找table_id=4且column_name_eng為sex對應記錄的menu_id,本示例menu_id=16;

步驟3: 在菜單内容表查找menu_id=16的所有記錄。

2.表名表 

記錄資料庫中所有的表資訊,每個表對應一條記錄。

【資料庫設計-3】菜單設計

3.域名表

記錄每個資料表中的每個域名。1個資料表中有n個域(列),就在該表中對應n個記錄。

【資料庫設計-3】菜單設計

4. 菜單内容表:

記錄菜單内容。