生活随笔
收集整理的這篇文章主要介紹了
菜谱分享网站微信小程序开发说明(2)-数据库
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
菜譜分享網站微信小程序開發說明(2)-數據庫
數據庫選擇使用的是MySQL,數據庫的名稱是gourmet,字符集:utf8mb4,排序規則:utf8mb4_general_ci
數據庫一共6張表:
- 菜譜主表
- 用料表
- 菜譜瀏覽記錄表
- 分類表(兩級或三級分類)
- 用戶表
- 用戶收藏表
用戶表(gourmet_user)
字段名類型備注
| id | int | 主鍵,自增 |
| nick_name | varchar | 用戶昵稱 |
CREATE TABLE `gourmet_user` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主鍵,自增',`nick_name` varchar(255) COLLATE utf8mb4_general_ci
NOT NULL COMMENT '用戶昵稱',PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_general_ci
;
淦,這個表其實沒用上😂
菜譜主表(gourmet_menu)
字段名類型備注
| id | int | 主鍵,自增 |
| img | varchar | 菜譜圖片url |
| title | varchar | 菜譜標題 |
| introd | varchar | 菜譜簡介 |
| content | text | 菜譜內容(html) |
| nickname | varchar | 作者昵稱 |
| recommend | tinyint | 是否是推薦(首頁輪播圖) |
CREATE TABLE `gourmet_menu` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主鍵,自增',`img` varchar(255) COLLATE utf8mb4_general_ci
NOT NULL COMMENT '菜譜圖片url',`title` varchar(255) COLLATE utf8mb4_general_ci
NOT NULL COMMENT '菜譜標題',`introd` varchar(255) COLLATE utf8mb4_general_ci
DEFAULT NULL COMMENT '菜譜簡介',`content` text COLLATE utf8mb4_general_ci
NOT NULL COMMENT '菜譜內容(html)',`nickname` varchar(255) COLLATE utf8mb4_general_ci
NOT NULL COMMENT '作者昵稱',`recommend` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '是否是推薦(首頁輪播圖)',PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_general_ci
;
這里的nickname使用的是用戶昵稱,主要是為了簡單,假定認為用戶昵稱是不能重復的,但顯然是不正確的。這造成了上面的用戶表沒有必要使用,如果僅僅是課設,沒有必要修改,但是如果有需要,請從數據庫動手開始修改!!!
用料表(gourmet_materials)
字段名類型備注
| id | int | 主鍵,自增 |
| menu_id | int | 外鍵(菜譜主表的id) |
| name | varchar | 材料名稱 |
| quantity | varchar | 用量 |
CREATE TABLE `gourmet_materials` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主鍵,自增',`menu_id` int(11) unsigned NOT NULL COMMENT '外鍵(菜譜主表的id)',`name` varchar(255) COLLATE utf8mb4_general_ci
NOT NULL COMMENT '材料名稱',`quantity` varchar(255) COLLATE utf8mb4_general_ci
NOT NULL COMMENT '用量',PRIMARY KEY (`id`),KEY `fk_menu_materials` (`menu_id`),CONSTRAINT `fk_menu_materials` FOREIGN KEY (`menu_id`) REFERENCES `gourmet_menu` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_general_ci
;
菜譜瀏覽記錄表(gourmet_menu_scan)
字段名類型備注
| id | int | 主鍵,自增 |
| menu_id | int | 外鍵(菜譜主表的id) |
| pageviews | int | 瀏覽量 |
| favorites | int | 收藏量 |
CREATE TABLE `gourmet_menu_scan` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主鍵,自增',`menu_id` int(10) unsigned NOT NULL COMMENT '外鍵(菜譜主表的id)',`pageviews` bigint(20) unsigned NOT NULL DEFAULT '0' COMMENT '瀏覽量',`favorites` bigint(20) unsigned NOT NULL DEFAULT '0' COMMENT '收藏量',PRIMARY KEY (`id`),KEY `fk_menu_scan` (`menu_id`),CONSTRAINT `fk_menu_scan` FOREIGN KEY (`menu_id`) REFERENCES `gourmet_menu` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_general_ci
;
分類表(gourmet_classify)
字段名類型備注
| id | int | 主鍵,自增 |
| name | varchar | 分類名稱 |
| parent_id | int | 父級分類id |
CREATE TABLE `gourmet_classify` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主鍵,自增',`name` varchar(255) COLLATE utf8mb4_general_ci
NOT NULL COMMENT '分類名稱',`parent_id` int(10) unsigned DEFAULT '0' COMMENT '父級分類id',PRIMARY KEY (`id`),KEY `fore_parentid` (`parent_id`)
) ENGINE=InnoDB AUTO_INCREMENT=41 DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_general_ci
;
用戶收藏表(gourmet_star)
字段名類型備注
| user_id | int | 雙主鍵,用戶表外鍵,用戶表id |
| menu_id | int | 雙主鍵,菜譜表外鍵,菜譜表id |
CREATE TABLE `gourmet_star` (`nick_name` varchar(255) COLLATE utf8mb4_general_ci
NOT NULL COMMENT '雙主鍵,用戶表外鍵,用戶表用戶昵稱',`menu_id` int(10) unsigned NOT NULL COMMENT '雙主鍵,菜譜表外鍵,菜譜表id',PRIMARY KEY (`nick_name`,`menu_id`) USING BTREE,KEY `fk_menu_star` (`menu_id`),CONSTRAINT `fk_menu_star` FOREIGN KEY (`menu_id`) REFERENCES `gourmet_menu` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_general_ci
;
個人公眾號🐕
我的個人公眾號已經開通了,正在按計劃建設中,以后的文章會第一時間發布在公眾號中,同時也給大家準備了億點學習資料,關注公眾號后臺發送:學習資料
總結
以上是生活随笔為你收集整理的菜谱分享网站微信小程序开发说明(2)-数据库的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。