一、 概述
本网上商城是一个综合性的B2C平台,可以在商城浏览商品、下订单、以及参加各种活动
管理员、运营可以在平台后台管理系统中管理商品、订单、会员等。
客服可以在后台管理系统中处理用户的询问以及投诉。
不过,暂时可能技术还不够硬……
二、需求分析
2.1 数据库设计目的
设计一个网购商城的数据库,以实现网购商城网站系统

2.12数据库选择
系统采用MySQL作为数据库
2.13数据库编码
数据库采用UTF-8编码格式

2.2需要完成的功能

功能描述:

* 后台管理系统:管理商品、订单、类目、商品规格属性、用户管理以及内容发布等功能。
* 前台系统:用户可以在前台系统中进行注册、登录、浏览商品、首页、下单等操作。
* 会员系统:用户可以在该系统中查询已下的订单、收藏的商品、我的优惠券、团购等信息。
* 订单系统:提供下单、查询订单、修改订单状态、定时处理订单。
* 搜索系统:提供商品的搜索功能。
* 单点登录系统:为多个系统之间提供用户登录凭证以及查询登录用户的信息。
2.3数据表设计

2.30 E-R图的模型设计
(1)实体集
用户 商品 商品类目 订单
(2)实体间联系
用户与商品多对多关系
商品与商品类目一对多关系(分类)
用户与购物车一对一关系(用户只能拥有一购物车)
用户与订单细节一对多关系
购物车与商品一对多关系(一购物车可以存放多个商品)
购物车与订单细节一对多关系

(3)E-R图
实体间联系E-R图


2.31商品表:
CREATE TABLE `tb_item` ( `id` bigint(20) NOT NULL COMMENT '商品id,同时也是商品编号',
`title` varchar(100) NOT NULL COMMENT '商品标题', `sell_point` varchar(500) DEFAULT
NULL COMMENT '商品卖点', `price` bigint(20) NOT NULL COMMENT '商品价格,单位为:分', `num` int
(10) NOT NULL COMMENT '库存数量', `barcode` varchar(30) DEFAULT NULL COMMENT '商品条形码'
,`image` varchar(500) DEFAULT NULL COMMENT '商品图片', `cid` bigint(10) NOT NULL
COMMENT'所属类目,叶子类目', `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT
'商品状态,1-正常,2-下架,3-删除', `created` datetime NOT NULL COMMENT '创建时间', `updated`
datetimeNOT NULL COMMENT '更新时间', PRIMARY KEY (`id`), KEY `cid` (`cid`), KEY
`status` (`status`), KEY `updated` (`updated`) ) ENGINE=InnoDB DEFAULT
CHARSET=utf8 COMMENT='商品表';
2.32商品描述表:
CREATE TABLE `tb_item_desc` ( `item_id` bigint(20) NOT NULL COMMENT '商品ID',
`item_desc` text COMMENT '商品描述', `created` datetime DEFAULT NULL COMMENT '创建时间',
`updated` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`item_id`) )
ENGINE=InnoDBDEFAULT CHARSET=utf8 COMMENT='商品描述表';
2.33商品类目表:
CREATE TABLE `tb_item_cat` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT
'类目ID', `parent_id` bigint(20) DEFAULT NULL COMMENT '父类目ID=0时,代表的是一级的类目', `name`
varchar(50) DEFAULT NULL COMMENT '类目名称', `status` int(1) DEFAULT '1' COMMENT
'状态。可选值:1(正常),2(删除)', `sort_order` int(4) DEFAULT NULL COMMENT
'排列序号,表示同级类目的展现次序,如数值相等则按名称次序排列。取值范围:大于零的整数', `is_parent` tinyint(1) DEFAULT '1'
COMMENT'该类目是否为父类目,1为true,0为false', `created` datetime DEFAULT NULL COMMENT
'创建时间', `updated` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`id`), KEY
`parent_id` (`parent_id`,`status`) USING BTREE, KEY `sort_order` (`sort_order`)
) ENGINE=InnoDB AUTO_INCREMENT=1183 DEFAULT CHARSET=utf8 COMMENT='商品类目';
2.34用户表:
CREATE TABLE `tb_user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `username`
varchar(50) NOT NULL COMMENT '用户名', `password` varchar(32) NOT NULL COMMENT
'密码,加密存储', `phone` varchar(20) DEFAULT NULL COMMENT '注册手机号', `email` varchar(50)
DEFAULT NULL COMMENT '注册邮箱', `created` datetime NOT NULL, `updated` datetime NOT
NULL, PRIMARY KEY (`id`), UNIQUE KEY `username` (`username`) USING BTREE, UNIQUE
KEY `phone` (`phone`) USING BTREE, UNIQUE KEY `email` (`email`) USING BTREE )
ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=utf8 COMMENT='用户表';
2.35内容表:
CREATE TABLE `tb_content` ( `id` bigint(20) NOT NULL AUTO_INCREMENT,
`category_id` bigint(20) NOT NULL COMMENT '内容类目ID', `title` varchar(200) DEFAULT
NULL COMMENT '内容标题', `sub_title` varchar(100) DEFAULT NULL COMMENT '子标题',
`title_desc` varchar(500) DEFAULT NULL COMMENT '标题描述', `url` varchar(500)
DEFAULT NULL COMMENT '链接', `pic` varchar(300) DEFAULT NULL COMMENT '图片绝对路径',
`pic2` varchar(300) DEFAULT NULL COMMENT '图片2', `content` text COMMENT '内容',
`created` datetime DEFAULT NULL, `updated` datetime DEFAULT NULL, PRIMARY KEY (
`id`), KEY `category_id` (`category_id`), KEY `updated` (`updated`) )
ENGINE=InnoDB AUTO_INCREMENT=32 DEFAULT CHARSET=utf8;
2.36内容分类表:
CREATE TABLE `tb_content_category` ( `id` bigint(20) NOT NULL AUTO_INCREMENT
COMMENT'类目ID', `parent_id` bigint(20) DEFAULT NULL COMMENT '父类目ID=0时,代表的是一级的类目',
`name` varchar(50) DEFAULT NULL COMMENT '分类名称', `status` int(1) DEFAULT '1'
COMMENT'状态。可选值:1(正常),2(删除)', `sort_order` int(4) DEFAULT NULL COMMENT
'排列序号,表示同级类目的展现次序,如数值相等则按名称次序排列。取值范围:大于零的整数', `is_parent` tinyint(1) DEFAULT '1'
COMMENT'该类目是否为父类目,1为true,0为false', `created` datetime DEFAULT NULL COMMENT
'创建时间', `updated` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`id`), KEY
`parent_id` (`parent_id`,`status`) USING BTREE, KEY `sort_order` (`sort_order`)
) ENGINE=InnoDB AUTO_INCREMENT=98 DEFAULT CHARSET=utf8 COMMENT='内容分类';
2.37订单表:
CREATE TABLE `tb_order` ( `order_id` varchar(50) COLLATE utf8_bin NOT NULL
DEFAULT '' COMMENT '订单id', `payment` varchar(50) COLLATE utf8_bin DEFAULT NULL
COMMENT'实付金额。精确到2位小数;单位:元。如:200.07,表示:200元7分', `payment_type` int(2) DEFAULT
NULL COMMENT '支付类型,1、在线支付,2、货到付款', `post_fee` varchar(50) COLLATE utf8_bin
DEFAULT NULL COMMENT '邮费。精确到2位小数;单位:元。如:200.07,表示:200元7分', `status` int(10)
DEFAULT NULL COMMENT '状态:1、未付款,2、已付款,3、未发货,4、已发货,5、交易成功,6、交易关闭', `create_time`
datetimeDEFAULT NULL COMMENT '订单创建时间', `update_time` datetime DEFAULT NULL
COMMENT'订单更新时间', `payment_time` datetime DEFAULT NULL COMMENT '付款时间',
`consign_time` datetime DEFAULT NULL COMMENT '发货时间', `end_time` datetime DEFAULT
NULL COMMENT '交易完成时间', `close_time` datetime DEFAULT NULL COMMENT '交易关闭时间',
`shipping_name` varchar(20) COLLATE utf8_bin DEFAULT NULL COMMENT '物流名称',
`shipping_code` varchar(20) COLLATE utf8_bin DEFAULT NULL COMMENT '物流单号',
`user_id` bigint(20) DEFAULT NULL COMMENT '用户id', `buyer_message` varchar(100)
COLLATE utf8_bin DEFAULT NULL COMMENT '买家留言', `buyer_nick` varchar(50) COLLATE
utf8_binDEFAULT NULL COMMENT '买家昵称', `buyer_rate` int(2) DEFAULT NULL COMMENT
'买家是否已经评价', PRIMARY KEY (`order_id`), KEY `create_time` (`create_time`), KEY
`buyer_nick` (`buyer_nick`), KEY `status` (`status`), KEY `payment_type` (
`payment_type`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
2.38订单项表:
CREATE TABLE `tb_order_item` ( `id` varchar(20) COLLATE utf8_bin NOT NULL,
`item_id` varchar(50) COLLATE utf8_bin NOT NULL COMMENT '商品id', `order_id`
varchar(50) COLLATE utf8_bin NOT NULL COMMENT '订单id', `num` int(10) DEFAULT NULL
COMMENT'商品购买数量', `title` varchar(200) COLLATE utf8_bin DEFAULT NULL COMMENT
'商品标题', `price` bigint(50) DEFAULT NULL COMMENT '商品单价', `total_fee` bigint(50)
DEFAULT NULL COMMENT '商品总金额', `pic_path` varchar(200) COLLATE utf8_bin DEFAULT
NULL COMMENT '商品图片地址', PRIMARY KEY (`id`), KEY `item_id` (`item_id`), KEY
`order_id` (`order_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信