微信小程序商城开发记录二之数据表结构设计

前言

思路:先设计基础核心表,再在核心表的基础上设计扩展表,最后设计其他的数据表。

1、用户表

CREATE TABLE lr_user(
id int(11) NOT NULL AUTO_INCREMENT COMMENT'用户表:包括后台管理员、商家会员和普通会员',
name varchar(20) NOT NULL COMMENT '登录账号',
uname VARCHAR(10) DEFAULT NULL COMMENT'昵称',
pwd VARCHAR(50) NOT NULL COMMENT'MD5 密码',
addtime int(11) NOT NULL DEFAULT'0' COMMENT'创建日期',
jifen FLOAT(11,0) DEFAULT'0' COMMENT'积分',
photo VARCHAR(255) DEFAULT NULL COMMENT'头像',
tel CHAR(15) DEFAULT NULL COMMENT'手机',
qq_id VARCHAR(20) NOT NULL DEFAULT'0' COMMENT'qq',
email VARCHAR(50) DEFAULT NULL COMMENT '邮箱',
sex TINYINT(2) NOT NULL DEFAULT'0' COMMENT '性别',
del TINYINT(2) NOT NULL DEFAULT'0' COMMENT'状态',
openid VARCHAR(50) NOT NULL  COMMENT'授权ID',
source VARCHAR(10) NOT NULL COMMENT'第三方平台(微信,QQ)',
PRIMARY KEY(id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

2、产品表

CREATE TABLE lr_product(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT'产品表',
shop_id INT(11)NOT NULL DEFAULT'0' COMMENT'商铺id',
brand_id INT(11) UNSIGNED DEFAULT NULL COMMENT'品牌ID',
name VARCHAR(50) NOT NULL COMMENT'产品名称',
intro VARCHAR(100) DEFAULT NULL COMMENT'广告语',
pro_number VARCHAR(100) DEFAULT NULL COMMENT'产品编号',
price DECIMAL(8,2) NOT NULL DEFAULT'0.00'COMMENT'价格',
price_yh DECIMAL(8,2) NOT NULL DEFAULT'0.00'COMMENT'价格',
price_jf INT(11) NOT NULL DEFAULT'0' COMMENT'赠送积分',
photo_x VARCHAR(100) DEFAULT NULL COMMENT'产品表',
photo_d VARCHAR(100) DEFAULT NULL COMMENT'大图',
photo_string TEXT COMMENT'图片组',
content TEXT COMMENT'商品详情',
addtime int(11) DEFAULT NULL COMMENT'添加时间',
updatetime int(11) NOT NULL COMMENT'修改时间',
sort int(11) DEFAULT'0' COMMENT'排序',
renqi int(11) NOT NULL DEFAULT'0' COMMENT '人气',
shiyong int(11) NOT NULL DEFAULT'0' COMMENT'购买数',
num int(11) NOT NULL DEFAULT'0' COMMENT'数量',
type TINYINT(2) NOT NULL DEFAULT'0' COMMENT'是否推荐  1 推荐    0 不推荐',
del TINYINT(2) NOT NULL DEFAULT'0' COMMENT'删除状态',
del_time INT(10) DEFAULT'0' COMMENT'删除时间',
pro_buff VARCHAR(255) DEFAULT NULL COMMENT'产品属性',
cid INT(11) NOT NULL COMMENT'分类id',
company char(10) DEFAULT NULL COMMENT'单位',
is_show TINYINT(1) UNSIGNED NOT NULL DEFAULT'1' COMMENT'是否是新品',
is_down TINYINT(1) UNSIGNED NOT NULL DEFAULT'0' COMMENT'下架状态',
is_hot TINYINT(1) UNSIGNED DEFAULT'0' COMMENT'是否热卖',
is_sale TINYINT(1) DEFAULT'0' COMMENT'是否折扣',
start_time INT(11) DEFAULT'0' comment'抢购开始时间',
end_time INT(11) UNSIGNED DEFAULT'0' COMMENT'抢购结束时间',
pro_type TINYINT(1) UNSIGNED NOT NULL DEFAULT'1' COMMENT'产品类型   1 普通  2 抢购产品',
PRIMARY KEY(id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

3、商品品牌表

CREATE TABLE lr_brand(
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT'产品品牌表',
name VARCHAR(100) NOT NULL COMMENT'品牌名称',
brandprice FLOAT(8,2) NOT NULL DEFAULT'0.00' COMMENT'起始价格',
photo VARCHAR(100)DEFAULT NULL COMMENT'图片',
type TINYINT(2) DEFAULT'0' COMMENT'是否推荐',
addtime INT(11) DEFAULT NULL COMMENT'添加时间',
shop_id int(11) UNSIGNED DEFAULT'0' COMMENT'商铺id',
PRIMARY KEY(id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

4、商品分类表

CREATE TABLE lr_category(
id int(11) NOT NULL AUTO_INCREMENT COMMENT'分类id',
tid INT(11) NOT NULL DEFAULT'0' COMMENT'父级分类id',
name VARCHAR(50) NOT NULL COMMENT'栏目名称',
sort INT(11) NOT NULL DEFAULT'0' COMMENT'排序',
addtime INT(11) NOT NULL DEFAULT'0' COMMENT'添加时间',
content VARCHAR(255) DEFAULT NULL COMMENT'栏目简介',
bz_1 VARCHAR(100) DEFAULT NULL COMMENT'缩略图',
bz_2 VARCHAR(255) DEFAULT NULL COMMENT'备注字段',
bz_3 VARCHAR(100) DEFAULT NULL COMMENT'图标',
bz_4 TINYINT(2) NOT NULL DEFAULT'0' COMMENT'备用字段',
bz_5 VARCHAR(100) DEFAULT NULL COMMENT'推荐缩略图',
PRIMARY KEY(id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

5、订单表

CREATE TABLE lr_order(
id int(11) NOT NULL AUTO_INCREMENT COMMENT'订单id',
order_sn VARCHAR(20) NOT NULL COMMENT'订单编号',
pay_sn VARCHAR(20) DEFAULT NULL COMMENT'支付单号',
shop_id INT(11) NOT NULL DEFAULT'0' COMMENT '商家ID',
yonghu_id INT(11) NOT NULL DEFAULT'0' COMMENT '用户ID',
price decimal(9,2) NOT NULL DEFAULT'0.00' COMMENT '价格',
amount decimal(9,2) DEFAULT'0.00' COMMENT'优惠后价格',
addtime INT(10) NOT NULL DEFAULT'0' COMMENT'购买时间',
del TINYINT(2) NOT NULL DEFAULT'0' COMMENT'删除状态',
type ENUM('weixin','alipay','cash')DEFAULT'weixin' COMMENT '支付方式',
price_h DECIMAL(9,2)NOT NULL DEFAULT'0.00' COMMENT'真实支付金额',
status TINYINT(2) NOT NULL DEFAULT'10' COMMENT'订单状态{0,已取消 10 未付款  20 待发货  30 待收货  40 待评价  50 交易完成  51 交易关闭}',
vid INT(11) DEFAULT'0' COMMENT'优惠券ID',
receiver VARCHAR(15) NOT NULL COMMENT'收货人',
tel CHAR(15) NOT NULL COMMENT'联系方式',
address_xq VARCHAR(50) NOT NULL COMMENT '地址详情',
code INT(11) NOT NULL COMMENT'邮编',
post int(11) DEFAULT NULL COMMENT'快递ID',
remark VARCHAR(255) DEFAULT NULL COMMENT'买家留言',
post_remark VARCHAR(255) NOT NULL COMMENT'邮费信息',
product_num INT(11) NOT NULL DEFAULT'1' COMMENT'商品数量',
trade_no VARCHAR(50) DEFAULT NULL COMMENT '微信交易单号',
kuaidi_name VARCHAR(10) DEFAULT NULL COMMENT'快递名称',
back ENUM('1','2','0') DEFAULT'0' COMMENT'标志客户是否有发起退款 1 申请退款  2 已退款',
back_remark VARCHAR(255) DEFAULT NULL COMMENT'退款原因',
back_addtime INT(11) DEFAULT'0' COMMENT'申请退款时间',
order_type TINYINT(2) DEFAULT '1' COMMENT'订单类型 1普通订单 2抢购订单',
PRIMARY KEY(id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

6、订单商品信息表

CREATE TABLE lr_order_product(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT'订单商品信息表',
pid int(11) NOT NULL DEFAULT'0' COMMENT'商品id',
pay_sn VARCHAR(20) DEFAULT NULL COMMENT'支付单号',
order_id INT(11) NOT NULL DEFAULT'0' COMMENT'订单id',
name VARCHAR(50) NOT NULL COMMENT'产品名称',
price DECIMAL(8,2) NOT NULL DEFAULT'0.00' COMMENT'价格',
photo_x VARCHAR(100) DEFAULT NULL COMMENT'商品图',
pro_buff VARCHAR(250) DEFAULT NULL COMMENT'产品属性',
addtime INT(11) NOT NULL COMMENT'添加时间',
num INT(11) NOT NULL DEFAULT'1' COMMENT'购买数量',
pro_guige VARCHAR(50) DEFAULT NULL COMMENT'规格id和规格名称',
PRIMARY KEY(id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

7、购物车表

CREATE TABLE lr_shopping_car(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT'购物车表',
pid INT(11) NOT NULL COMMENT'商品ID',
price DECIMAL(9,2) NOT NULL DEFAULT'0.00' COMMENT'商品单价',
num INT(11) NOT NULL DEFAULT'1' COMMENT'数量',
buff VARCHAR(255) NOT NULL COMMENT'属性(序列化规格)',
addtime INT(10) NOT NULL COMMENT'添加时间',
uid INT(11) NOT NULL COMMENT'用户ID',
shop_id INT(11) NOT NULL DEFAULT'0' COMMENT'商家ID',
gid INT(11) DEFAULT'0' COMMENT'规格id',
type TINYINT(2) DEFAULT'2' COMMENT'0是热卖商品,1是团购,2是普通商品',
PRIMARY KEY(id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

8、收获地址表

CREATE TABLE lr_address(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT'地址id',
name VARCHAR(10) NOT NULL COMMENT'收货人',
tel CHAR(15) NOT NULL COMMENT'联系方式',
sheng INT(11) NOT NULL DEFAULT'0' COMMENT'省id',
city INT(11) NOT NULL DEFAULT'0' COMMENT'市id',
quyu INT(11) NOT NULL DEFAULT'0' COMMENT'区域id',
address VARCHAR(255) NOT NULL COMMENT'收货地址(不加省市区)',
address_xq VARCHAR(255) NOT NULL COMMENT'省市区+详细地址',
code INT(11) NOT NULL DEFAULT'0' COMMENT '邮政编码',
uid INT(11) NOT NULL DEFAULT'0' COMMENT '用户ID',
is_default TINYINT(2) NOT NULL DEFAULT'0' COMMENT'是否默认地址 1默认',
PRIMARY KEY(id),
UNIQUE KEY id(id)USING BTREE
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

9、省市区地址联动表

CREATE TABLE lr_china_city(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT'主键 id',
tid INT(11) DEFAULT'0' COMMENT'父级id',
name VARCHAR(255) DEFAULT NULL,
code VARCHAR(255) DEFAULT NULL,
head VARCHAR(1) DEFAULT NULL,
type TINYINT(2) NOT NULL DEFAULT'0',
PRIMARY KEY(id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

10、广告信息表

CREATE TABLE lr_guanggao(
id INT(11) NOT NULL AUTO_INCREMENT COMMENT'子页广告管理表',
name VARCHAR(20) DEFAULT NULL COMMENT'广告名称',
photo VARCHAR(100) DEFAULT NULL COMMENT'图片',
addtime INT(11) NOT NULL DEFAULT'0' COMMENT'添加时间',
sort INT(11) NOT NULL DEFAULT'0',
type ENUM('product','news','partner','index')DEFAULT'index' COMMENT'广告类型',
action VARCHAR(255) NOT NULL COMMENT'链接值',
position TINYINT(2) UNSIGNED DEFAULT'1' COMMENT'广告位置 1首页轮播',
PRIMARY key(id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

11、优惠券表

CREATE TABLE lr_voucher(
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT'店铺优惠券表',
shop_id INT(11) UNSIGNED NOT NULL DEFAULT'0' COMMENT'店铺ID',
title VARCHAR(100) DEFAULT NULL COMMENT'优惠券名称',
full_money DECIMAL(9,2) NOT NULL DEFAULT'0.00' COMMENT'满多少钱',
amount DECIMAL(9,2) NOT NULL DEFAULT'0.00' COMMENT'减多少钱',
start_time INT(11) NOT NULL DEFAULT'0' COMMENT'开始时间',
end_time INT(11) NOT NULL DEFAULT'0' COMMENT'结束时间',
point INT(11) DEFAULT'0' COMMENT'所需积分',
count INT(11) UNSIGNED NOT NULL DEFAULT'1' COMMENT'发行数量',
receive_num INT(11) UNSIGNED DEFAULT'0' COMMENT'领取数量',
addtime INT(11) NOT NULL DEFAULT'0' COMMENT'添加时间',
type TINYINT(1) NOT NULL DEFAULT'1' COMMENT'优惠券类型',
del TINYINT(1) NOT NULL DEFAULT'0' COMMENT'删除状态',
proid text COMMENT'产品 ID ',
PRIMARY KEY(id)

)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

12、优惠券领取记录表

CREATE TABLE lr_user_voucher(
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT'会员优惠券领取记录',
uid INT(11) UNSIGNED NOT NULL DEFAULT'0' COMMENT'会员ID',
vid INT(11) UNSIGNED NOT NULL DEFAULT'0' COMMENT'优惠券id',
shop_id INT(11) UNSIGNED NOT NULL DEFAULT'0' COMMENT'商铺ID',
full_money DECIMAL(9,2) NOT NULL DEFAULT'0.00' COMMENT'满多少钱',
amount DECIMAL(9,2) NOT NULL DEFAULT'0.00' COMMENT'减多少钱',
start_time INT(11) DEFAULT'0' COMMENT'开始时间',
end_time INT(11) DEFAULT'0' COMMENT'结束时间',
addtime INT(11) NOT NULL DEFAULT'0' COMMENT'领取时间',
status TINYINT(2) UNSIGNED DEFAULT'1' COMMENT'使用状态 1未使用  2已使用  3已失效',
PRIMARY KEY(id)

)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

13、搜索记录表

CREATE TABLE lr_search_record(
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT'搜索记录表',
uid INT(11) NOT NULL DEFAULT'0' COMMENT'会员ID',
keyword VARCHAR(255) NOT NULL COMMENT'搜索内容',
num INT(11) NOT NULL DEFAULT'1' COMMENT'搜索次数',
addtime INT(11) DEFAULT'0' COMMENT'搜索时间',
PRIMARY KEY(id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

14、意见反馈表

CREATE TABLE lr_fankui(
id INT(11) NOT NULL AUTO_INCREMENT,
uid INT(11) NOT NULL DEFAULT'0' COMMENT'用户ID',
message VARCHAR(255) NOT NULL COMMENT'反馈内容',
addtime INT(11) NOT NULL DEFAULT'0' COMMENT'反馈时间',
PRIMARY KEY (id)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 ;

在这里插入图片描述

细节说明

SQL报错

1064 - You have an error in your SQL syntax;
这是语法错误

COMMENT

给列或字段添加注释的

unsigned

将数字类型无符号

ENGINE=InnoDB不是默认就是这个引擎吗?

是的,如果不写也是ok,就会走默认的,在这里写上是因为可以很清楚的看到这个建表语句用了哪些,而且在创建表的时候,写上也是一个很好的习惯

AUTO_INCREMENT=22,它不是自增的吗?为什么还要设数字?

——这个是自增的,在这里设置数字的意思是想要让这条语句在增长的时候,从22开始自增。

utf8不是已经在my.ini里设置过了?

——这个虽然在my.ini设置过了,但设置的是mysql的的语言编码,而这里创建的时候不设置,就会出现乱码问题,二者的作用域是不一样的,在创建表单的时候,这个charset会作用到这个表上,他代表mysql建立数据库数据表时设定字符集为utf-8

  • 8
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值