站内消息系统数据表怎么设计

来源:互联网 发布:电影cms系统哪个好 编辑:程序博客网 时间:2024/04/29 02:14
-- 一起4张表 消息类别表,消息表,发送消息人员表,接收消息人员表-- 至于会员要接收到信息后删除自己,其实可用标记处理而无作废,也就存在---回收站的概念,最后也可以彻底删除-- 消息表单独拿出来不做任何处理,这样数据也不会冗余,发送人与接收人的处理分别可以单独处理---------------消息类别表-----------------TMessageType      FTypeID FTypeName FTypeMemo---------------消息表---------------TMessageInfo FMessageID FTypeName  --(这里也不需要放置ID,为提高性能)直接放类别名称 FContent FSendDate---------------发送消息人员表-与消息表关联获取所有信息--------------TSendMessage       FSendID     --主键ID FMessageID  --TMessageInfo主键ID FUserID     --用户ID FSendPerson --发送人 FCancel     --是否作废标记,也可作为删除删除标记---------------接收消息人员表-与消息表关联获取所有信息----TReceiveMessage      FReceiveID    FMessageID    FUserID    FReadFtatus --是否读取    FCancel  -----------------用户表-----------------TUserInfo(结构为你自己的)FUserID为主键ID--SQL语句大概写法(我用SQLSERVER) --1.发送所有人     INSERT INTO TReceiveMessage      (FMessageID,FUserID,FReadFtatus,FCancel)     SELECT FMessageID,FUserID ,0,0  --默认未读     FROM TUserInfo,TSendMessage     WHERE FSendID=@FSendID    --2.发送指定人  INSERT INTO TReceiveMessage    (FMessageID,FUserID,FReadFtatus,FCancel)     SELECT FMessageID,FUserID ,0,0  --默认未读     FROM TUserInfo,TSendMessage     WHERE FSendID=@FSendID AND FUserID=@FUserID--TMessageInfo与其它2张消息表 建立好主外键约束就行了