账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    即时聊天的数据库设计,最近联系人需要单独建表吗?
    48
    0

    需求大概是这样的
    我有个表用来记录聊天内容,字段大概是这样的

    msgid
    from
    to
    content
    time

    然后我需要展现用户的最近的联系人,理论上我可以通过sql从这个聊天内容表里面查询出所有的最近联系人,但是我现在需要删除最近联系人同时还得保留聊天记录,也就是说我不可能通过清除两人的聊天记录来达到删除最近联系人记录的目的
    那么我是否需要另外建一张最近联系人的表,然后在双方互发消息的同时维护这张最近联系人的表?

    1
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 在设计即时聊天数据库时,一般会涉及到用户、消息、会话等几个主要字段。其中,用户信息包括用户ID、用户名、密码等;消息信息包括发送者ID、接收者ID、消息内容等;会话信息包括会话ID、会话状态(如开始、结束等)、会话时间等。

      如果需要将用户的联系人单独建表,那么每个用户的联系人信息都会包含在相应的用户表中。这样可以方便用户查看和管理他们的联系人。

      然而,具体是否需要将用户的联系人单独建表,还需要根据你的应用需求和数据库设计规范来决定。如果你只是需要在用户信息表中存储联系人信息,那么单独建表并不需要;如果你需要在会话表中存储联系人信息,那么可能需要创建一个新的表来存储联系人信息。

      另外,如果你的应用支持多个用户同时在线,那么还需要考虑如何设计数据库来支持多用户同时使用。这可能需要考虑使用多用户连接池、消息队列等技术来实现。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部