朋友圈或者qq动态相关的数据库设计

    xiaoxiao2022-07-02  80

    类似微信朋友圈或者qq动态的设计,我这边需求是陌生人之间也可以观看动态,有点类似陌陌动态,根据思路主要分为三个表,动态信息表,评论表以及点赞表。如有不足,请各位大佬指点。

    动态信息表

    create table DynamicCircle (    DCID                 varchar(32) not null,    UID                  varchar(32),    Content              varchar(1024),    FileType             int comment '1-无 2-图片 3-视频',    Longitude            decimal(10,7),    Latitude             decimal(10,7),    Address              varchar(256),    LikeCount            bigint,    CreateTime           datetime default CURRENT_TIMESTAMP,    IsDel                int default 0,    primary key (DCID) );

    其中要注意 动态内容Content字符集utf8mb4,可以插入表情,FileType使用显示否是相关文件,可以另外创建一个文件表与之关联,LikeCount为点赞数量,主要是为了方便查询统计,不用每次都去查询点赞表, IsDel为删除标识,防止强制删除,做弱删除处理,至于文件相关表,设计比较简单,不在说明

    评论表

    create table CircleComment (    CCtID                varchar(32) not null,    DCID                 varchar(32),    UID                  varchar(32),    ToUID                varchar(32),    Content              varchar(256),    LikeCount            bigint,    CreateTime           datetime,    IsDel                int default 0,    primary key (CCtID) );

    其中要注意 评论内容Content字符集utf8mb4,UID和ToUID分别表示评论用户和被评论用户。

    点赞表

    create table CircleLIke (    CLID                 varchar(32) not null,    UID                  varchar(32),    SourceID             varchar(32),    LikeType             int comment '1-评论 2-动态信息',    State                int comment '0-已取消赞  1-有效赞',    CreateTime           datetime default CURRENT_TIMESTAMP,    primary key (CLID) );

    这里说明下 SourceID标识来源标识,LikeType为1时表示评论表主键,LikeType为2时表示动态信息主键。

     

    最新回复(0)