SpringBoot 打造外卖项目(一):数据库设计

本文详细介绍了电商系统的数据库设计,包括商品表、类目表、订单表和订单详情表的结构与字段说明,为电商平台的开发提供了基础的数据存储方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

分为四张表

- 商品表 - 类目表 - 订单表 - 订单详情表

-- 商品表
create table `product_info`(
	`product_id` varchar(32) not null,
	`product_name` varchar(64) not null comment '商品名称', 
	`product_price` decimal(8,2) not null comment '商品金额',
	`product_stock` int not null comment '商品库存',
	`product_description` varchar(64) comment '商品描述',
	`product_icon` varchar(512) comment '商品小图',
	`category_type` int not null comment '类目编号',
	`create_time` timestamp not null default current_timestamp comment '创建时间', -- 在创建该条时自动插入当前时间在这个字段
	`update_time` timestamp not null default current_timestamp on update 
		current_timestamp comment '修改时间', -- 在修改该条目时自动插入当前时间在这个字段
	primary key (`product_id`) -- 设置 product_id 为该表主键
) comment '商品表';

-- 类目表
create table `product_category`(
	`category_id` int not null auto_increment, -- 自增
	`category_name` varchar(64) not null comment '类目名字',
	`category_type` int not null comment '类目标号',
	`create_time` timestamp not null default current_timestamp comment '创建时间', -- 在创建该条时自动插入当前时间在这个字段
	`update_time` timestamp not null default current_timestamp on update 
		current_timestamp comment '修改时间', -- 在修改该条目时自动插入当前时间在这个字段
	primary key (`category_id`), -- 设置 product_id 为该表主键
	unique key `uqe_category_type` (`category_type`) -- 唯一设置
) comment '类目表';


--订单表
create table `order_master`(
	`order_id` varchar(32) not null,
	`buyer_name` varchar(32) not null comment '买家名字',
	`buyer_phone` varchar(32) not null comment '买家电话',
	`buyer_address` varchar(128) not null comment '买家地址',
	`buyer_openid` varchar(64) not null comment '买家微信openid',
	`order_amount` decimal(8,2) not null comment '订单总金额',
	`order_status` tinyint(3) not null default '0' comment '订单状态,默认0新下单', -- tinyint 占用一个字节  取值范围从-128 到 127
	`pay_status` tinyint(3) not null default '0' comment '支付状态,默认0未支付',
	`create_time` timestamp not null default current_timestamp comment '创建时间', -- 在创建该条时自动插入当前时间在这个字段
	`update_time` timestamp not null default current_timestamp on update 
		current_timestamp comment '修改时间', -- 在修改该条目时自动插入当前时间在这个字段
	primary key (`order_id`),
	key `idx_buyer_openid` (`buyer_openid`) -- 加一个索引,根据微信openid查询
) comment '订单表';


-- 订单详情表
create table `order_detail` (
	`detail_id` varchar(32) not null,
	`order_id` varchar(32) not null,
	`product_id` varchar(32) not null,
	`product_name` varchar(64) not null comment '商品名称',
	`product_price` decimal(8,2) not null comment '商品价格',
	`product_quantity` int not null comment '商品数量',
	`product_icon` varchar(512) comment '商品小图',
	`create_time` timestamp not null default current_timestamp comment '创建时间', -- 在创建该条时自动插入当前时间在这个字段
	`update_time` timestamp not null default current_timestamp on update 
		current_timestamp comment '修改时间', -- 在修改该条目时自动插入当前时间在这个字段
	primary key (`detail_id`),
	key `idx_order_id` (`order_id`) -- 加一个索引,根据订单 id 查询
) comment '订单详情表';

 

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值