站内消息系统数据表怎么设计
来源:互联网 发布:电影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张消息表 建立好主外键约束就行了