《软件技术基础》之《数据库习题解析》

《软件技术基础》之《数据库习题解析》

《软件技术基础》之《数据库习题解析》
《软件技术基础》之《数据库习题解析》
《软件技术基础》之《数据库习题解析》
《软件技术基础》之《数据库习题解析》
设计思路:
系统中抽象出操作、角色、用户三个概念,其中操作由项目中抽象出来,一个操作可以是一个URI,也可以是一个方法,比如创建用户的操作,删除用户的操作。角色是权限管理的核心,一个角色具有某些操作的权限,比如用户管理员,这个角色具有的权限有添加用户的权限、修改用户的权限、删除用户的权限。系统中的用户则被赋予若干个角色,比如如果有一个用户A被赋予了用户管理员的角色,那他就能添加、修改、删除用户。

表结构设计:
项目表

字段名 说明
id
token **
name 项目名称
ctime 创建时间
mtime 修改时间

操作表

字段名 说明
id
project_id 项目id
uri 操作地址
name 操作名称
status 状态
ctime 创建时间
mtime 修改时间

角色表

字段名 说明
id
project_id 项目id
actions 具有权限的操作
status 状态
ctime 创建时间

用户表

字段名 说明
id
project_id 项目
name 用户名
roles 所属的角色
status 状态
ctime 创建时间
mtime 修改时间

《软件技术基础》之《数据库习题解析》

注:把圆角矩形换成椭圆
《软件技术基础》之《数据库习题解析》
关系模型:
工厂(工厂编号,厂名,地址)
产品(产品编号,产品名,规格)
职工(职工号,姓名,工厂编号,聘期,工资)
生产(工厂编号,产品编号,计划数量)

每个关系模式的主键、外键如下:
工厂:主键是工厂编号,没有外键。
产品:主键是产品编号,没有外键。
职工:主键是职工号,外键是工厂编号。
生产:主键是(工厂编号,产品编号),外键是工厂编号、产品编号。
《软件技术基础》之《数据库习题解析》
注:把圆角矩形换成椭圆
《软件技术基础》之《数据库习题解析》
关系模型:
系(系名,系址,系主任姓名,办公电话)
教师(工作证号码,教师姓名,出生日期,党派,所属系名)
课程(课程号,课程名,先修课程号,授课教师)
学生(学号,学生姓名,性别)
选修(学号,课程号,成绩)