毕业论文管理系统的数据库设计.docx
《毕业论文管理系统的数据库设计.docx》由会员分享,可在线阅读,更多相关《毕业论文管理系统的数据库设计.docx(18页珍藏版)》请在冰豆网上搜索。
毕业论文管理系统的数据库设计
3.4数据库设计与实施
3.4.1数据库需求分析
用户的需求具体体现在各种信息的提供、保存、更新和查询方面,这就要求数据库结构能充分满足各种信息的输入和输出。
收集基本数据,数据结构以及数据处理的流程,组成一份详尽的数据库。
针对本学院的毕业论文完成的流程,通过对学生学习过程的内容和数据流程分析,设计如下所示的数据项和数据结构。
1.学院数据实体:
学院名称、负责人、办公电话、学院编号。
2.学生数据实体:
学号、密码、姓名、性别、民族、籍贯、出生日期、身份证号、联系电话、Email、备注、学院编号、所在班级、角色名称、论文编号。
3.教师数据实体:
教师编号、密码、学院编号、所在科室、发布选题、教育程度、职称、姓名、性别、政治面貌、联系电话、Email、角色名称、备注。
4.角色数据实体:
角色名称、权限名称。
5.权限数据实体:
权限名称、角色名称。
以上的实体都是基本的数据实体。
由于操作模块的名称对应该权限,在程序初始化时这些数据都应该添加,教师论文管理系统的目的进行论文管理,因此还要包括如下的几个数据实体:
6.论文数据实体:
论文编号、学院、作者、刊物名称、论文题目、收录情况、教师编号、学号、影响力、影响因子、引用次数、备注。
7.评审数据实体:
教师编号、学号、论文编号、论文题目、评审意见、总分。
3.4.2数据库概念结构设计
根据需求分析的数据项和数据结构,可以规划出学院实体、教师实体、学生实体等各实体的E_R图。
具体如下图所示。
图3-7学院实体E-R图
图3-8教师实体E-R图
图3-9学生实体E_R图
图3-10论文实体E_R图
图3-11角色实体E_R图
图3-12权限实体E_R图
图3-13系统总体E_R图
3.4.3数据逻辑结构设计
将数据概念结构设计转化为SQLSERVER 2005数据库系统所支持的实际数据库模型,就是数据库的逻辑结构。
在实体以及实体之间的关系基础上,形成数据库中的表格以及各个表格之间的关系。
毕业论文管理系统数据库中的各个表格的设计见附录。
1.管理员进行基础信息的管理时,包括学院,用户、角色的管理,因此要包括四个数据实体。
根据前面的分析可知,这四个实体要描述的信息分别为:
2.学院数据实体:
学院名称、负责人、办公电话、学院编号。
3.学生数据实体:
学号、密码、姓名、性别、民族、籍贯、出生日期、身份证号、联系电话、Email、备注、学院编号、所在班级、角色名称、论文编号。
4.教师数据实体:
教师编号、密码、学院编号、所在科室、发布选题、教育程度、职称、姓名、性别、政治面貌、联系电话、Email、角色名称、备注。
5.角色数据实体:
角色名称、权限名称。
6.由于操作模块的名称对应该权限,在程序初始化时这些数据都应该添加,因此还应有如下的数据实体。
7.权限数据实体:
权限名称、角色名称、
8.以上的五个实体都是基本的数据实体。
9.教师论文管理系统的目的进行论文管理,因此还要包括如下的几个数据实体:
10.论文数据实体:
论文编号、学院、作者、刊物名称、论文题目、收录情况、教师编号、学号、影响力、影响因子、引用次数、备注。
11.评审数据实体:
教师编号、论文编号、学号、论文题目、评审意见、总分。
3.4.4物理结构设计
在这个数据库管理系统中要建立13张数据表,下面将主要介绍关键数据表的数据库设计的详细及存储后台用户基本信息的数据库表的字段说明。
1.数据表的说明
(1)学院数据表(pms_college):
用于存放学院数据,如表3-1。
(2)教师数据表(pms_teacher):
用于存放教师数据,如表3-2。
(3)学生数据表(pms_student):
用于存放学生数据,如表3-3。
(4)角色数据表(pms_role):
用于存放角色数据库,如表3-4。
(5)权限数据表(pms_right):
用于存放权限数据,如表3-5。
(6)论文数据表(pms_paper):
用于存放论文数据,如表3-6。
(7)评审数据表(pms_score):
用于存放学生论文的评审结果,如表3-7。
(8)课题选择表(pms_select):
纪录学院所要求的论文的课题,供毕业生进行论文课题选择,如表3-8。
(9)上传文档表(pms_upload):
纪录用户上传文档的保存信息,如表3-9
(10)系统信息设置表(Config):
纪录系统的基础设置信息,如表3-10。
(11)公告信息表(Information):
用于存放系统公告消息,如表3-11。
(12)管理员信息表(admin):
用于存放管理员的信息,如表3-12
(13)消息表(massage)纪录用户之间相互发送的消息等信息,如表3-13。
2.数据表的详细设计
(1)学院数据表(pms_college)的设计如表3-1所示。
表3-1学院数据表
编号
字段名称
字段类型
字段说明
备注
1
Collegeid
Char(10)
学院编号
主键
2
cname
Char(30)
学院名称
3
Tel
Char(11)
办公电话
4
Man
Char(30)
负责人
5
Tamount
Char(10)
教师人数
6
Smount
Char(10)
毕业人数
(2)教师数据表(pms_teacher)的设计如表3-2所示。
表3-2教师数据表
编号
字段名称
字段类型
字段说明
备注
1
tno
Char(10)
教师编号
主键
2
Password
Char(10)
密码
3
sname
Char(30)
姓名
4
Sex
char
性别
Check约束
5
Politics
char
政治面貌
6
Education
char
教育程度
7
Post
char
职称
8
Mobile
char
电话
9
Email
char
Email
10
Descs
char
备注
11
Collegeid
char
学院编号
12
Department
char
所在科室
13
role
char
角色
14
subject
Char
发布选题
15
image
image
头像
(3)学生数据表(pms_student)的设计如表3-3所示。
用户基本信息表保存的是后台用户的基本信息。
其中“sno,tno”和“用户密码”是用于以后登陆,为了不引起混乱,要求“用户名”在表中唯一;姓名、电话、电子邮件等是用户的基本信息。
表3-3学生数据表
编号
字段名称
字段类型
字段说明
备注
1
sno
char
学号
主键
2
Password
char
密码
3
Name
char
姓名
4
Sex
char
性别
Check约束
5
Politics
char
政治面貌
6
Birthday
Date
出生日期
7
Cerid
Char
身份证号
8
Addr
char
籍贯
9
Mobile
char
电话
10
Email
char
Email
11
Descs
char
备注
12
Collname
char
学院名称
13
Classes
char
所在班级
14
role
char
角色
15
Bh
Char
论文编号
16
image
image
头像
(4)角色数据表(pms_role)
表3-4角色数据表
编号
字段名称
字段类型
说明
备注
0
Id
char(10)
角色编号
主键
1
Name
char
角色名称
2
rights
char
拥有权限
(5)权限数据表(pms_right)
表3-5权限数据表
编号
字段名称
字段类型
说明
1
Name
char
角色名称
2
Rname
char
权限名称
(6)论文数据表(pms_paper)
表3-6论文数据表
编号
字段名称
字段类型
字段说明
备注
1
Bh
char
论文编号
主键
2
Xy
char
学院名称
3
Author
char
作者
4
Pname
char
论文题目
5
tno
Char
教师编号
6
bz
char
备注
7
sno
char
学号
(7)评审数据表(pms_score)
表3-7评审数据表
编号
字段名称
字段类型
说明
1
Lwmc
char
论文题目
2
tno
char
教师编号
3
sno
char
学号
4
Bh
char
论文编号
5
comm
char
评审意见
6
score
char
总分
(8)选题信息表(pms_select)如表3-8所示。
表3-8选题信息表
序号
字段名
字段类型
说明
备注
1
Xt_id
numeric(9)
编号
主键,唯一,非空
2
title
Varchar(50)
选题标题
非空
3
intr
Varchar(100)
选题简介
4
from
Varchar(16)
来源
外键,非空
5
addtime
Datetime(8)
添加时间
非空
(9)上传文档表(pms_upload)如表3-9所示。
表3-9上传文档表up_docunment
序号
字段名
字段类型
说明
备注
1
file_id
numeric(9)
编号
主键,唯一,非空
2
title
Varchar(50)
文档标题
非空
3
url
Varchar(100)
文档存放路径
非空
4
from
Varchar(16)
来源
外键,非空
5
addtime
Datetime(8)
添加时间
非空
(10)系统信息设置表(Config)如表3-10所示。
表3-10系统信息设置表Config
序号
字段名
字段类型
说明
备注
1
sitename
Varchar(50)
站点名称
非空
2
siteurl
Varchar(50)
站点路径
非空
3
Filepath
Varchar(50)
文件保存路径
默认“upfile”
4
Imgpath
Varchar(50)
图片保存路径
默认“upimg”
5
T_open
Char(10)
教师是否开放注册
6
S_open
Char(10)
学生是否开放注册
7
S_endtime
Datetime(8)
学生账户过期时间
8
T_endtime
Datetime(8)
教师账户过期时间
(11)公告信息表(Information)如表3-11所示。
公告信息主要包括以下几个方面:
学校关于毕业设计方面的规章制度、设计安排,以及推荐范文、表格下载和历年的优秀论文,和最新的公告和通知等方面内容。
该项只有管理员才有权限进行添加。
表3-11公告信息表(Information)
序号
字段名
字段类型
说明
备注
1
Info_id
numeric(9)
编号
主键,唯一,非空
2
Info_title
Varchar(50)
文章标题
非空
3
Info_content
Varchar(2048)
文章内容
非空
4
Info_from
Varchar(16)
文章来源
非空
5
Info_class
Varchar(16)
文章分类
非空
6
Info_time
Datetime(8)
添加时间
非空
7
Info_upfilename
Varchar(50)
上传文件名
8
Info_upfilepath
Varchar(100)
文件路径
(12)管理员信息如表3-12所示。
该表是用于保存系统管理人员的基本信息的,其中“管理员用户名”和“管理密码”是管理人员登陆系统进行管理的通行证,为了不引起混乱,“用户名”在表中是唯一的。
本系统的管理员分为两类:
一是总管理员,拥有最高权限;二是教务管理人员,拥有一般权限,如信息的发布等等。
表3-12管理员信息
序号
字段名
字段类型
说明
备注
1
Admin_id
numeric(9)
编号
主键,唯一,非空
2
Admin_username
Varchar(16)
用户名
唯一,非空
3
Admin_password
Varchar(32)
管理密码
非空
4
Admin_realname
Varchar(10)
真实姓名
非空
5
Admin_depart
Varchar(20)
部门
6
Admin_mail
Varchar(50)
邮箱
非空
7
Admin_level
Varchar(10)
权限
非空
8
Admin_validate
Varchar
(2)
验证
默认已审
9
Admin_regtime
Datetime(8)
注册时间
非空
(13)消息管理表Massage如表3-13所示。
表3-13消息管理表Massage
序号
字段名
字段类型
说明
备注
1
M_id
numeric(9)
编号
主键,唯一,非空
2
M_title
Varchar(50)
消息标题
非空
3
M_content
Varchar(200)
消息内容
非空
4
M_from
Varchar(16)
发送人
外键,非空
5
M_to
Varchar(16)
收信人
外键,非空
6
M_read
Varchar
(2)
是否已读
默认“未读”
7
M_time
Datetime(8)
发送时间
非空
8
M_upfilename
Varchar(50)
附件名
9
M_upfilepath
Varchar(100)
附件地址
3.4.5创建表的脚本文件
根据数据库的字段设计,编写的创建数据表的语句详见附录。
3.5表之间的关系
图3-14表间关系
附录B代码
创建表的脚本语句:
(1)学院数据表
createtablepms_college(
Collegeidintprimarykey,
Namechar(20)notnull,
Telchar(11)notnull,
Manchar(12)notnull,
renshuchar(10));
(2)教师数据表
createtablepms_teacher(
tnocharprimarykey,
passwordcharnotnull,
namecharnotnull,
sexchardefaultnull,
Politicscharnotnull,
Educationcharnotnull,
Postcharnotnull,
Mobilechar,
Emailchar,
Descschar,
Collegecharnotnull,
Departmentcharnotnull,
rolechar);
(3)学生数据表
createtablepms_student(
snochar(10)primarykey,
passwdchar(16)notnull,
snamechar(30)notnull,
sexchar(3)notnull,
politicschar(45),
birthdaydatetime,
ceridchar(30)notnull,
addrchar(30)notnull,
mobilechar(11),
emailchar(50),
descschar(90),
collegechar(30),
classeschar(35),
rolechar(90),
pnochar(20)notnull);
(4)文件上传数据表
createtablepms_fileup(
snochar(10),
fnochar(10)primarykey,
fnamenchar(50),
filememochar(50),
fileaddrchar(50),
filetimedatetime);
(1)角色数据表
createtablepms_role
(namechar(9)primarykey,
Rnamechar(12)
)
(2)权限数据表
createtablepms_right
(Rnamechar(12)primarykey,
namechar(12)
)
(3)论文数据表
createtablepms_paper
(Bhchar(10)primarykey,
Xycharnotnull,Zzcharnotnull,Kwmccharnotnull,Lwmccharnotnull,Yxlcharnotnull,Yxyzcharnotnull,Yycsnumbernotnull,Djzznumbernotnull,Bzcharnotnull))
(4)评审数据表
createtablepms_score(Bhchar(10),
Snocharnotnull,Lwmccharnotnull,Tnocharnotnull,Commcharnotnull,scorecharnotnull)
(5)管理员数据表
createtablepms_admain(
anochar(10)primarykey,
anamechar(30)notnull,
sexchar(3)notnull,
addrchar(30)notnull,
mobilechar(11),
emailchar(50),
descschar(90),
rolechar(90),
);