• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Macv1994
V2EX  ›  程序员

请教一个数据库表设计

  •  
  •   Macv1994 ·
    weijiang1994 · Jul 12, 2021 · 3260 views
    This topic created in 1773 days ago, the information mentioned may be changed or developed.

    各位 dalao,类似社区的那种私信表要怎么设计呢? 一方删除但是另外一方还可以继续在历史记录中看到私信内容。

    5 replies    2021-07-13 09:33:24 +08:00
    jianhua
        1
    jianhua  
       Jul 12, 2021
    mysql or ....:
    all_message:
    id: uuid()
    text: xxx

    redis:
    zadd user_a_message_list:
    order_number:N
    id:all_message_id

    zadd user_b_message_list:
    order_number:N
    id:all_message_id
    tabris17
        2
    tabris17  
       Jul 12, 2021
    Message 表:

    id, receiver_user_id, sender_user_id, content, created_at, ... ...


    UserMessage 表:

    id, user_id, direct, direction, message_id, ... ...

    发一条消息生成三条记录
    hpanqing
        3
    hpanqing  
       Jul 12, 2021 via iPhone
    加个字段即可,表示发送方删除了此消息,实际上只是打个"发送方删除"标记,接收方仍然可以看见的。
    Macv1994
        4
    Macv1994  
    OP
       Jul 12, 2021
    kenisad5566
        5
    kenisad5566  
       Jul 13, 2021
    用软删除,表加一个 deleted 字段,删除的话把值置为 1
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3740 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 05:04 · PVG 13:04 · LAX 22:04 · JFK 01:04
    ♥ Do have faith in what you're doing.