mysql 用户签到表设计_用户签到表的设计思路与数据库实现

怼烎@ 2022-10-26 15:26 592阅读 0赞

签到做为,一个促进用户粘性的手段已经很成熟了。

这里说下,个人的一些设计表思路

添加用户配置表。主键关联User表,即可。

CREATE TABLE `cft_user_signin` (

`id` int(11) NOT NULL AUTO_INCREMENT COMMENT ‘id’,

`user_id` int(11) DEFAULT NULL COMMENT ‘用户id’,//关联主用户表。想当于是主键表的外键关系表。

`days` int(10) DEFAULT NULL COMMENT ‘连续签到天数’,//判断用户是否连续签到

`last_signin_time` int(10) DEFAULT NULL COMMENT ‘最后一次签到时间’,//最后一次签到时间

`signin_nums` int(2) DEFAULT ‘0’ COMMENT ‘可补签次数’,//用户有没有补签的机会。

PRIMARY KEY (`id`) USING BTREE

) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT=’用户签到个人配置表’;

CREATE TABLE `cft_user_signin_log` (

`id` int(11) NOT NULL AUTO_INCREMENT COMMENT ‘id’,//自增id

`user_id` int(11) DEFAULT NULL COMMENT ‘用户id’,//用户id,做为获取用户签到情况的表

`signin_content` text COMMENT ‘签到奖励内容’,//用户已经获得的内容,或者其他序列化的参数。

`add_time` int(10) DEFAULT NULL COMMENT ‘签到时间’,//用户正常签到的时间,补签时,用pacht_time,替换add_time,

`signintype` enum(‘签到’,’补签’) DEFAULT ‘签到’ COMMENT ‘签到类型1=签到2=补签’,//签到记录类型

`patch_time` int(10) DEFAULT NULL COMMENT ‘补签的时间’,//补签遗漏的时间。当前时间的前一天,或者好几天。

PRIMARY KEY (`id`) USING BTREE

) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT=’用户签到日志记录’;

//以上这些,仅做记录。如有帮助,那是最好。

发表评论

表情:
评论列表 (有 0 条评论,592人围观)

还没有评论,来说两句吧...

相关阅读