数据库里面有用户表(user)和消息表(message),现在我想要实现的功能是当我往消息表里面增加一条记录时,用户后登录能够对其进行查看和删除的操作。小弟现在的想法是:在消息表里多加入一个字段,该字段将未读的用户的id记录到其中,用逗号将其隔开,当用户登录时,循环读取
请问还有没有更好的方法,小弟菜鸟 ,请教!!!!

解决方案 »

  1.   

    再建一个表,字段包括用户ID,消息ID,用户读过的一条消息,在这个表中放一条记录。用户登录以后,消息表中排除他已经读过的消息记录,就是他未读的消息记录。
      

  2.   

    select msg_id from message
    where not in
    (select msg_id from user_msg where usr_id='001')
      

  3.   

    如果一条消息可能对应多个用户,那就再建一个表来保存这个关系.
    这张表三个列就够了:用户ID,消息ID,已读标记
      

  4.   

    用逗号将其隔开,当用户登录时,循环读取 
    不妥,最好另建表
    userID messageID isReaded  PK userID+messageID