在需求分析结束之后,接下来要做的不是马上开发功能,而是进行表结构的设计。只有把表结构设计正确了,才能支撑软件后续的功能开发,这一步是非常重要的。
数据库的创建
创建数据库tmall_ssm
。
并将数据库的编码格式设置为utf8
,便于存放中文。
表关系图
在这张表关系图上,列出了模仿天猫整站一共需要用到的9张表,以及表之间的关系。
表介绍
表名 | 中文含义 | 介绍 |
---|---|---|
Category | 分类表 | 存放分类信息,如女装,平板电视,沙发等 |
Property | 属性表 | 存放属性信息,如颜色,重量,品牌,厂商,型号等 |
Product | 产品表 | 存放产品信息,如LED40EC平板电视机,海尔EC6005热水器 |
PropertyValue | 属性值表 | 存放属性值信息,如重量是900g,颜色是粉红色 |
ProductImage | 产品图片表 | 存放产品图片信息,如产品页显示的5个图片 |
Review | 评论表 | 存放评论信息,如买回来的蜡烛很好用,么么哒 |
User | 用户表 | 存放用户信息,如斩手狗,千手小粉红 |
Order | 订单表 | 存放订单信息,包括邮寄地址,电话号码等信息 |
OrderItem | 订单项表 | 存放订单项信息,包括购买产品种类,数量等 |
建表
在建表过程中,会设置外键约束,所以表和表之间有依赖关系。因此会先建立被外键指向的表,比如User
,Category
,然后再是其他表。
用户表
|
|
分类表
|
|
属性表
从这个表开始,就有外键约束了。
本表的外cid
,指向分类表的id字段。
产品表
产品表字段稍多,介绍下。name
: 产品名称subTitle
: 小标题originalPrice
: 原始价格promotePrice
: 优惠价格stock
: 库存createDate
: 创建日期
本表的外键cid
,指向分类表的id
字段。
属性值表
本表有两个外键。
外键ptid
,指向属性表的id
字段。
外键pid
,指向产品表的id
字段。
产品图片表
type
表示类型,产品图片分单个
图片和详情
图片两种。
本表的外键pid
,指向产品表的id
字段。
评价表
外键pid
,指向产品表的id
字段。
外键uid
,指向用户表的id
字段。
订单表
订单表的字段也比较多,说明一下。orderCode
: 订单号address
: 收货地址post
: 邮编receiver
: 收货人信息mobile
: 手机号码userMessage
: 用户备注信息createDate
: 订单创建日期payDate
: 支付日期deliveryDate
: 发货日期confirmDate
: 确认收货日期status
: 订单状态
外键uid
,指向用户表id
字段
订单项表
这个表是外键最多的一个表。
外键pid
,指向产品表id
字段。
外键oid
,指向订单表id
字段。
外键uid
,指向用户表id
字段。number
字段表示购买数量。
整理表
一般来说,对于一个新项目,建表的时候,会把sql语句都准备好,一次性执行。