《新闻管理系统》数据库设计_参考答案

  • 格式:doc
  • 大小:127.00 KB
  • 文档页数:4

《数据库原理及应用》课程设计
——《新闻管理系统》数据库设计(参考答案)
题目解读:
系统功能需求:
1. 新闻按栏目分类(只有一级栏目),每条新闻可归属多个栏目,每个栏目有多条新闻。
(实体新闻和栏目间是多对多关系,因此转换成关系模式时,该关系应为一个表)
2. 每条新闻可包含多个图片,但无需按图片检索新闻;
(所有图片链接可存放于一个字段中)
3. 每条新闻可包含最多3个关键字,用于显示相关新闻;
(每个新闻包含3个字段,用于存储关键字)
4. 用户可按栏目、新闻名称或关键字进行模糊或精确查询新闻;
(新闻名称,关键字,栏目必须是单独的字段)
5. 用户在浏览新闻的同时可对其进行评论,其评论信息将按时间顺序显示在新闻底部;
(实体用户和新闻间的关系(评论)必须包含评论时间等字段,因此转换成关系模式
时,评论应为一个表)
6. 每位用户必须有用户名、密码等信息,用于验证用户登录;
7. 每位用户归属一用户组,用于判断用户权限;
(用户和用户组属于一对多关系,因此转换成关系模式时,无需用一个表来描述该关
系,在用户表中加一字段,用户说明该用户隶属哪个用户组)
8. 用户的权限有对栏目名称进行修改;对新闻进行新增、修改、删除等操作;对用户评论
进行删除等操作;对用户进行管理(修改密码、删除用户等)。
(权限定义应该是一个独立的表)
9. 每个用户组拥有不同的权限;每个权限可属于多个用户组。
(用户组与权限是一个多对多的关系。它们间的关系应为一个表)
1、 根据系统需求设计表结构(如下图所示)

表1新闻表(T_News)
字段名称 字段类型(长度) 可空 默认值 备注
新闻ID varchar(128) 否 GUID(主键)
新闻名称 varchar(255) 是
新闻内容 text 是
新闻图片 varchar(255) 是 以|号分隔;
关键字1 varchar(128) 是
关键字2 varchar(128) 是
关键字3 varchar(128) 是
备注 text 是

表2栏目表(T_Column)
字段名称 字段类型(长度) 可空 默认值 备注
栏目ID varchar(128) 否 GUID(主键)
栏目名称 varchar(255) 是
栏目关键字 varchar(255) 是
备注 text 是

n
m
新闻 栏目
所属

新闻ID

栏目关键字
栏目名称
栏目ID

图片

内容
关键字1
关键字2
关键字3

m

评论

用户

评论时间
评论内容
评论ID
用户ID
用户名
密码
所属
用户组

用户组ID
用户组名称
用户组描述
n
1 m

拥有
权限

m

n
权限ID 权限内容

名称
表3新闻栏目表(T_News_Column)
字段名称 字段类型(长度) 可空 默认值 备注
关系ID varchar(128) 否 GUID(主键)
新闻ID varchar(128) 否
栏目ID varchar(128) 否
备注 text 是

表4用户表(T_User)
字段名称 字段类型(长度) 可空 默认值 备注
用户ID varchar(128) 否 GUID(主键)
用户名称 varchar(128) 是
用户密码 varchar(128) 是
所属权限组 varchar(128) 否 权限组ID
备注 text 是

表5评论表(T_Comment)
字段名称 字段类型(长度) 可空 默认值 备注
评论ID varchar(128) 否 GUID(主键)
评论用户 varchar(128) 否 用户ID
评论新闻 varchar(128) 否 新闻ID
评论时间 datetime 否 提交时间
评论内容 text 是
备注 text

表6用户组表(T_UserGroup)
字段名称 字段类型(长度) 可空 默认值 备注
用户组ID varchar(128) 否 GUID(主键)
用户组名称 varchar(128) 是
用户组描述 varchar(128) 是
备注 text 是

表7权限表(T_Powers)
字段名称 字段类型(长度) 可空 默认值 备注
权限ID varchar(128) 否 GUID(主键)
权限内容 varchar(255) 否
备注 text 是
表8用户组权限表(T_UserGroup_Powers)
字段名称 字段类型(长度) 可空 默认值 备注
权限分配ID varchar(128) 否 GUID(主键)
用户组 varchar(128) 否 用户组ID
权限 varchar(128) 否 权限ID
备注 text 是