即使通信-表结构(四)
用户表
基本的用户信息,用于登录
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字符串存储
思考
好友数据-成对
申请数据-成对
聊天数据-成对
数据就一下子多起来了。