数据库中有两个表
1.user
2.mails主要说说mails这个表,初步设计是这样的
ID title content senderID receiverID ownerID       senderTime deleteTime status    isReaded
                 发送人ID 收件人ID   这封邮件的属主                      邮件状态  是否已读
发送一封邮件,一对一发送的时候,收件人一条记录,发件人一条记录,ownerID不一样而已。该表不太合理
1.邮件群发
  当我发送多个人的时候,记录怎么保存,发件人一条记录,收件人每人一条记录?收件人ID怎么保存,以及前台怎么关联显示多个用户的名字(一个用户的话,可以关联查询得到用户名)
2.中文全局检索
  发件人和收件人我保存的是数字ID,我想根据收件人的姓名来搜索的话,如何检索
3.群组发送
  比如公司有财务部,群组发送(这个倒是可以在user表中加个group的字段),收件人ID为groupID
  这个为后续大哥们,麻烦帮忙看看,感激不尽

解决方案 »

  1.   

    标准的设计方法是,MIALS表中,每人每条邮伯都是单独一条记录。
    比如A群发给B,C,D一封邮件。则在表中应该存储4条记录A send ,...
    B inbox .....
    C inbox .....
    D inbox ...这四条记录互不影响。 当然细节上,B,C,D的记录上还要加上A send这个邮件的序列号,等等各种细节信息。
      

  2.   

    to ACMAIN_CHM
    我确实也是那样保存记录的
    但是如何保存A的那条记录,A的那条记录肯定要有收件人ID的,收件人ID这样保存吗 B;C;D,而且保存的是数字ID(对应用户表中的ID)
    前台显示的话如何显示
    比如说
    点击A的发件箱
    发件人                   收件人
    根据A的ID得到发件人     (如何根据B;C;D)得到收件人的名字