日期:2014-05-18  浏览次数:20433 次

站内短信:如何记录这条信息哪位用户阅读过,因为有的短信是一次发给多位用户,如何记录才能更高效呢?

站内短信问题:


比如:表   messageinfo   存储的是短信信息   :
---------------------------------

ID             title                                                 发送对象

23             关于公司制度....                           45,1001,1002,4006,2990,3544,2877
20             请假的的续                                       45,2003,5778,4500,3411
18             查收                                                   6007
12             电话费                                               2099
11             报表                                                   2009,3466,3122

-------------------------------------


假如我是用户ID   为   45   的用户,我看过了此条信息,要采取什么办法记录我看过了此条信息呢?

我的想法有两个:

1,在表   messageinfo   后面加一个字段:   whoreadMessage,   把所有读过此信息的人的ID号全记录在里面,形如这样:45,67,2334,983

这样当用户   ID   为   45   的这读过此信息后,就把他的ID   45   写在这个字段里。

2,单独建一个表   "whoReadtable "   专门存储谁读过哪条信息,形如:

ID     信息ID号                   读过此信息的用户ID

67       23                                   45
66       27                                   45
65       10                                   45
64       87                                   98
63       28                                   67


对这两种方法只是我想出来的,不知道效率如何,不过,我想当信息多了,用户多了后,这两种方法都有效率问题:

方法一:如果当用户真的有上万个用户,则在表   messageinfo   中   whoreadMessage字段将会存储上万人的   ID   号,这样行得通吗?


方法二:同样道理,当用户和信息达到上万的时候,将会在一个非常庞大的表里搜索谁读过哪条信息


这样的问题到底要如何解决才是正道呢?有过这方面经验的高手给指点一下,非常感谢!!




------解决方案--------------------
建议新建一个表