作者:陈业贵 华为云享专家 51cto(专家博主 明日之星 TOP红人) 阿里云专家博主
文章目录
品牌表:
分类表:
品牌分类表:
sql:
品牌表:
CREATE TABLE t_brand(
id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT "主键",
`name`varchar(200) NOT null COMMENT "名称",
image varchar(500) COMMENT "图片网址",
letter CHAR(1) not null COMMENT "品牌首字母",
UNIQUE unq_name(`name`),
INDEX idx_letter(letter)
) COMMENT="品牌表";
字段解析:
id代表顺序排列。这个做搜索快一点。
品牌得有名称吧。对吧name。
品牌难道没有图片吗、对吧。当前有啦.
品牌首字母也要有对吧。
类型解析:
unsigned是从0开始的啦。但是有AUTO_INCREMENT(自增)代表从1开始啦.
nam image letter都是varchar代表都是字符串.
索引
UNIQUE unq_name(`name`),
代表品牌名字是唯一的。不然不能分辨.
商品分类表:
CREATE TABLE t_category(
id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT "主键",
`name` varchar(200) not null COMMENT "分类名称",
parent_id int unsigned COMMENT "上级分类id",
if_parent boolean not null COMMENT "是否含有下级分类",
sort int unsigned not null COMMENT "排名指数",
INDEX idx_parent_id(parent_id),
INDEX idx_sort(sort)
) COMMENT="商品分类表";
字段解析:
sort是排序,是必须是是0或者正数的哦
技巧:
分类与品牌表关联表:
CREATE TABLE t_category_brand(
category_id int unsigned COMMENT "分类id",
brand_id int unsigned comment "品牌id",
PRIMARY KEY(category_id,brand_id)
) COMMENT="分类与品牌关联表";
三张表之间的联系:
举个例子:分类表的手机。品牌表的联想 华为 。。品牌分类表
解析: t_category_brand
在t_category_brand表中,category_id的意思是在category中找id==3的分类(手机)。然后brand_id里面的值1 2代表在品牌表中找id=1 id=2的name.。总结起来就是手机这个分类的里面有品牌联想 华为.
解析:t_category
CREATE TABLE t_category(
id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT "主键",
`name` varchar(200) not null COMMENT "分类名称",
parent_id int unsigned COMMENT "上级分类id",
if_parent boolean not null COMMENT "是否含有下级分类",
sort int unsigned not null COMMENT "排名指数",
INDEX idx_parent_id(parent_id),
INDEX idx_sort(sort)
) COMMENT="商品分类表";
为什么要有parent_id int unsigned COMMENT “上级分类id”, if_parent boolean not null COMMENT “是否含有下级分类”,
难道这个分类没有上级分类没有下级分类吗?是吧
INDEX idx_parent_id(parent_id), INDEX idx_sort(sort)
搜索快一点
t_brand
品牌表得头图片地址把。的有图片的名字把
注意:数据库只能存储图片的地址