每个人从SQLServer读数据并记住自己读过的设A,B,C三个电脑,都不定时地向SQL Server中的同一个表中插入聊天信息A,B,C电脑每5秒从这同一个表中读回聊天信息(包括别人发的和自己发的)现在问题是:
如何让A,B,C都做到只读回上次没读的,也就是只读自从上回读回之后传上去的新信息

解决方案 »

  1.   

    建议加一个是否已读的标识字段Is_Read来记录
      

  2.   

    加一字段:IsRead(bit)
    从表中取所有自未读的记录,同时把这些记录标记为已读。
      

  3.   

    #1.表加一个时间戳字段(timestamp),每行记录,都会有一个唯一的时间戳
    #2.加一个表,记录每个用户读取的最后时间戳。
    #3.用户每读一次,从#2表中取出最大的时间戳,从#1表中取大于最大时间戳的所有记录,再把取出记录的最大时间戳记录到#2表中。
      

  4.   

    加时间字段和状态字段。时间控制大范围,状态控制已读或者未读。没有仔细的想过,感觉可以满足你的需求。try
      

  5.   

    加一个自增长列id吧,再一个记录每个用户最后读取的最大ID值。