Appearance
客户表有没有会员制度? 如果有该怎样做?应该先设计一个会员表
会员表
sql
CREATE TABLE `t_level` (
`id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键',
`level` varchar(200) NOT NULL COMMENT '等级名称',
`discount` decimal(10, 2) UNSIGNED NOT NULL COMMENT '折扣',
PRIMARY KEY (`id`) USING BTREE
) COMMENT = '会员登记表';
客户表
sql
CREATE TABLE `t_customer` (
`id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键',
`username` varchar(200) NOT NULL COMMENT '用户名',
`password` varchar(2000) NOT NULL COMMENT '密码(加密)',
`wechat` varchar(200) NULL DEFAULT NULL COMMENT '微信号',
`tel` char(11) NULL DEFAULT NULL COMMENT '手机号',
`level_id` int(10) UNSIGNED NULL DEFAULT NULL COMMENT '会员等级',
`create_time` timestamp(0) NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '添加时间',
`last_update_time` timestamp(0) NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '最后修改时间',
`is_deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '逻辑删除',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `unq_username`(`username`) USING BTREE,
INDEX `idx_username`(`username`) USING BTREE
) COMMENT = '客户表' ;
DANGER
密码字段的长度之所以设计成2000,是因为不同的加密算法,加密的字符串也不相同,为了兼容各种加密算法,我们把长度设置的长一些。
客户的收货地址
sql
CREATE TABLE t_customer_address (
id int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键',
customer_id int(10) UNSIGNED NOT NULL COMMENT '客户ID',
`name` varchar(20) NOT NULL COMMENT '姓名',
tel char(11) NOT NULL COMMENT '电话',
address varchar(200) NOT NULL COMMENT '地址',
prime tinyint(1) NOT NULL COMMENT '默认地址',
is_deleted tinyint(1) NOT NULL DEFAULT 0 COMMENT '逻辑删除',
PRIMARY KEY (id) USING BTREE,
INDEX idx_customer_id(customer_id) USING BTREE
) COMMENT = '客户收货地址表' ;