美文网首页
即使通信-表结构(四)

即使通信-表结构(四)

作者: 客观开发者 | 来源:发表于2022-07-22 17:21 被阅读0次

用户表

基本的用户信息,用于登录

id->bigint auto increament primary key 自增长主键

user_account varchar 账号 例如qq号、微信号

user_username varchar 用户名-或昵称、例如昵称、微信名称

password varchar 密码

user_avatar varchar 头像

reg_time 注册时间
如果想实名在填字段

好友表

id->bigint auto increament primary key 自增长主键

f_uid bigint 用户表 关联用户表-登录用.md

t_uid big int

reamke varchar 备注

------- 不是必须的
create_time 添加好友时间
user_name varchar 用户名

user_avatar varchar 头像

user_are varchar 地区

sex integer

birthday date

好友申请表

CREATE TABLE `im_user_apply`  (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `from_user_id` bigint(20) NOT NULL COMMENT '申请添加好友id',
  `to_user_id` bigint(20) NOT NULL COMMENT '被申请用户id',
  `apply_time` datetime NULL DEFAULT NULL COMMENT '申请时间',
  `remark` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
  `type` int(2) NULL DEFAULT NULL COMMENT '0申请中1成功2失败',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;

回话表

chatId->bigint auto increament primary key 自增长主键

uid->bigint 那个用户

from_uid->integer/varchar 发送人id(自己发送就是自己的uid,不然就是别人的uid)
to_uid ->integer/varchar 接收人id(uid/group_id)

from_chat_avatar 头像 /// 个人的话是对方的头像,群的话是群的头像
to__chat_avatar 头像

from_chat_name -> varchar 聊天者的名称,比如我与你聊天,我的表中的这个字段就是你的name,你的表中就是我的name.
to_chat_name -> varchar 聊天者的名称,比如我与你聊天,我的表中的这个字段就是你的name,你的表中就是我的name.

last_msg->varchar 最后的一条消息内容
last_msg_id->integer/varchar 最后一条消息的id,作用是用于比较,比如在聊天页面中,删除了一条消息,撤回了一条消息之类的,这时候可以根据这个msg_id进行删除修改和更新。
last_user_name->varchar 最后的发送者名称

last_time->integer 最后消息发送时间

chat_type->integer 回话类型(群组消息/个人聊天/系统消息)
msg_type->integer 消息类型(文字/图片/文件/音乐/视频/语音/表情/视频通话/语音通话等)
unread_count->integer 改回话未读数目

chat 表- 单聊 模式

id->integer auto increament primary key 自增长主键

uid->Interger/varchar 所属者uid

is_me->Integer 是否是自己发送的(UI显示区分) 0

from_uid->Interger/varchar 发送者uid(可以是自己)

from_avatar->Interger/varchar 发送者头像

from_name-> varchar 发送者名称

to_uid-> Interger/varchar 接受者(uid/group_id)

chat_type 会话类型

msg_type 消息类型

msg-> 消息内容

file_info->文件信息json格式

send_time->发送时间

send_status->发送状态 发送中,发送完成,发送失败

extra->把人插入 一般可以为null,预留的额外字段,使用JOSN字符串存储

思考

好友数据-成对
申请数据-成对
聊天数据-成对

数据就一下子多起来了。

相关文章

  • 即使通信-表结构(四)

    用户表 基本的用户信息,用于登录 id->bigint auto increament primary key 自...

  • 模块拆分(四)

    第四步:项目结构和组件通信 项目结构 基础组件:通信协议层BeeHiveTrack埋点语音服务网络通信XHFoun...

  • 查询性能优化【《高性能mysql第三版》笔记】

    前言 即使库表结构再合理、索引再合适,如果查询写得很糟糕,也无法实现高性能。查询优化,索引优化,库表结构优化要齐头...

  • 四、线性表(二)

    接上篇线性表 (一) 四、线性表的物理结构--链式存储结构 4.1 定义 顺序存储结构的最大缺点就是插入和删除的时...

  • SQL练习题-2

    员工表结构: 部门表结构: 部门员工表结构: 部门经理表结构: 薪资表结构: 1.获取所有员工当前的manager...

  • SQL经典试题,自己一一做过(有所改动)

    题目 设有一数据库,包括四个表:学生表、课程表、分数表 以及教师信息表。 1.建表 四个表的结构分别如下面表一至表...

  • SQL练习题-1

    员工表结构: 部门表结构: 部门员工表结构: 部门经理表结构: 薪资表结构: 1.查找最晚入职员工的所有信息 分析...

  • SQL练习题-3

    员工表结构: 部门表结构: 部门员工表结构: 部门经理表结构: 薪资表结构: 1.查找所有员工自入职以来的薪水涨幅...

  • 记一次MySQL单表区间查询优化过程

    表结构 这份表结构是优化后的表结构,和最初的表结构差别不大,最初建表默认引擎是InnoDB,没有longTime字...

  • 数据结构和算法一(线性表和单链表)

    一、前言 二、数据结构 三、线性表: 3、我们在来看顺序存储方式的特点 4、链式存储结构: 四、线性表(循环链表)...

网友评论

      本文标题:即使通信-表结构(四)

      本文链接:https://www.haomeiwen.com/subject/hwenbrtx.html