微信点餐数据库表设计

-- 微信点餐数据库表设计
-- product_info商品表
-- product_category类目表
-- order_master订单主表
-- order_detail订单详情表
-- seller_info卖家信息表

-- 商品表
-- 主键:product_id
-- 创建时间:默认当前时间default current_timestamp
-- 修改时间:每次修改数据时,数据库自动修改为当前时间on update current_timestamp
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)
)comment '商品表';


-- 类目表
--  主键:category_id
--  约束索引:查询商品表product_info时,会通过类目编号category_type来查,因此类目编号是唯一的,不能出现两个相同的类目编号

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),
	unique key uqe_category_type (category_type)
)comment '类目表';

-- 订单表
--  主键:查询订单详情表order_detail时,会通过order_id来查订单表,所以要定义主键
--  索引:查询卖家下了哪些订单seller_info时,要用buyer_openid来查
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新订单',
	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)
)comment '订单表';



--  订单详情表
--  主键:查询订单详情表order_detail,需要通过detail_id来表
--  索引:查询订单表时,会通过order_id来查
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)  
)comment '订单详情表';

  
-- 卖家(登录后台使用, 卖家登录之后可能直接采用微信扫码登录,不使用账号密码)  
create table seller_info (  
    id varchar(32) not null,  
    username varchar(32) not null,  
    password varchar(32) not null,  
    openid varchar(64) not null comment '微信openid',  
    create_time timestamp not null default current_timestamp comment '创建时间',  
    update_time timestamp not null default current_timestamp on update current_timestamp comment '修改时间',  
    primary key (id)  
) comment '卖家信息表';  

  

  

posted @ 2018-04-26 15:34  amoyzhu  阅读(1188)  评论(0编辑  收藏  举报