教务管理系统数据库设计54038优质文档Word文件下载.docx
《教务管理系统数据库设计54038优质文档Word文件下载.docx》由会员分享,可在线阅读,更多相关《教务管理系统数据库设计54038优质文档Word文件下载.docx(18页珍藏版)》请在冰豆网上搜索。
![教务管理系统数据库设计54038优质文档Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-12/7/d11fbe71-9e7b-485f-b2d8-1a5a6bb51929/d11fbe71-9e7b-485f-b2d8-1a5a6bb519291.gif)
(1)管理员:
对学期设置的管理每个阶段有不同的功能。
(2)老师:
对选修了自己课程的学生评分。
(3)学生:
选修科目。
2.5、系统环境需求
系统模式
本系统采用B/S模式作为开发模式
硬件环境
服务器端:
高性能的计算机一台,
普通的双绞线作为连接。
客户端:
普通的计算机或者工作站,
普通的双绞线作为连接。
软件环境
服务器端:
安装SQLSERVER2000的服务器版本
第三章:
系统概念设计
系统ER图
系统ER图说明:
(1)同一的老师可以教多个科目,同一科目可以由多个老师教。
(2)同一学生可以选修多老师的科目,同一个老师的科目可以让多个学生选修。
第四章:
逻辑设计
4.1系统关系模型
a)选课成绩表(选课编号,平时成绩,期末成绩,综合成绩)
b)用户表(用户编号,用户名称,用户密码,性别,住址,电话)
c)班别表(班别编号,班别名称,班别描述)
d)系别(系别编号,系别名称,系别电话)
e)学期时间(学期编号,学期名称,学期开始时间,学期结束时间,学期状态)
f)课室表(课室编号,课室名称,课室面积,课室最大人数)
g)课程表(课程编号,课程名称,课程学分,课程类型,课程学时)
h)角色表(角色编号,角色名称,角色权限)
i)老师授课表(授课编号,授课时间)
j)上课地点表(地点编号)
4.2系统数据库表结构
数据库表索引
表名
中文名
Score
选课成绩表
Sysuser
用户表
Classes
班别表
Dept
系别表
Items
学期时间表
Major
课程表
Classroom
课室表
Userstyle
角色表
Mdteacher
老师授课表
Majorroom
上课地点表
用户表(Sysuser)
字段名
字段类型
长度
主/外键
字段值约束
对应中文名
Id
varchar
20
P
Notnull
用户编号
classesid
Varchar
f
班级编号
Userstyleid
10
角色编号
Username
用户名
Password
密码
Sex
2
性别
Address
Varchar
50
住址
Phone
电话
选课成绩表(Score)
Scid
int
选课成绩编号
id
F
用户名称
Muid
Int
课程编号
Itemid
学期编号
Pacgrade
平时成绩
Endgrade
期末成绩
Syngrade
综合成绩
班别表(Classes)
Classesid
班别编号
Classesname
班别名称
Classescontext
班别描述
系别表(Dept)
Deptid
系别编号
Deptname
系别名称
Deptphone
系电话
Deptaddress
系地址
学期时间表(Items)
Itemsid
Itname
学期名称
Starttime
Data
学期开始时间
Endtime
学期结束时间
Itstate
学期状态
课程表(Major)
MDid
Mdname
课程名称
Mdcredit
课程学分
Mdstyle
课程类型
Mdstudytime
课程学时
课室表(Classroom)
Roomed
课室编号
Roomname
课室名称
Area
面积
Maxnum
最大人数
角色表(Userstyle)
Usersyleid
Userstylename
角色名称
Permission
权限
教师授课表(Mdteacher)
授课编号
Mdid
Mtime
Datetime
授课时间
上课地点表(Majorroom)
Mrid
上课地点编号
Roomid
第五章:
源码
/*==============================================================*/
/*触发器:
删除已存在表*/
ifexists(select*fromsysobjectswhereid=object_id('
Classes'
))
droptableClasses
GO
Classroom'
droptableClassroom
Dept'
droptableDept
Items'
droptableItems
Major'
droptableMajor
Majorroom'
droptableMajorroom
Mdteacher'
droptableMdteacher
Score'
droptableScore
Sysuser'
droptableSysuser
Userstyle'
droptableUserstyle
/*Table:
Classes*/
createtableClasses
(
classesidvarchar(20)notnull,
deptidvarchar(20),
classnamevarchar(20)unique,
clacontextvarchar(50),
primarykey(classesid)
)
go
Classroom*/
createtableClassroom
roomidvarchar(20)notnull,
roomnamevarchar(20)unique,
areaintcheck(area>
0),
maxnumintcheck(maxnum>
primarykey(roomid)
Dept*/
createtableDept
deptidvarchar(20)notnull,
deptnamevarchar(20)unique,
depphonevarchar(10),
primarykey(deptid)
Items*/
createtableItems
itemsidintnotnullIDENTITY,
itnamevarchar(20),
starttimedatetime,
endtimedatetime,
itstatevarchar(10)check(itstatein(‘0’,’1’,’2’)),
primarykey(itemsid)
Major*/
createtableMajor
MDidvarchar(20)notnull,
MDnamevarchar(10)unique,
MDcreditint,
MDstylevarchar(10)check(MDstylein(‘公选课’,’选修课’)),
MDstudytimeintcheck(MDstudytime>
primarykey(MDid)
Majorroom*/
createtableMajorroom
MRidintnotnullIDENTITY,
roomidvarchar(20),
MDidvarchar(20),
primarykey(MRid)
Mdteacher*/
createtableMdteacher
muidintnotnullIDENTITY,
idvarchar(20),
Mtimedatetime,
primarykey(muid)
Score*/
createtableScore
scidintnotnullIDENTITY,
muidint,
itemsidint,
pacgradeint,
endgradeint,
syngradeint,
primarykey(scid)
Sysuser*/
createtableSysuser
idvarchar(20)notnull,
classesidvarchar(20),
userstyleidvarchar(10),
usernamevarchar(20)unique,
passwordvarchar(10),
sexvarchar(10)check(sexin(‘男’,’女’)),
addressvarchar(50),
phonevarchar(20),
primarykey(id)
Userstyle*/
createtableUserstyle
userstyleidvarchar(10)notnull,
userstylenamevarchar(20)unique,
permissionvarchar(50),
primarykey(userstyleid)
altertableClassesaddconstraintFK_Reference_11foreignkey(deptid)
referencesDept(deptid)ondeletecascadeonupdatecascade;
altertableMajorroomaddconstraintFK_Reference_15foreignkey(MDid)
referencesMajor(MDid)ondeletecascadeonupdatecascade;
altertableMajorroomaddconstraintFK_Reference_18foreignkey(roomid)
referencesClassroom(roomid)ondeletecascadeonupdatecascade;
altertableMdteacheraddconstraintFK_Reference_10foreignkey(id)
referencesSysuser(id)ondeletecascadeonupdatecascade;
altertableMdteacheraddconstraintFK_Reference_16foreignkey(MDid)
altertableScoreaddconstraintFK_Reference_13foreignkey(muid)
referencesMdteacher(muid);
altertableScoreaddconstraintFK_Reference_19foreignkey(itemsid)
referencesItems(itemsid);
altertableScoreaddconstraintFK_Reference_4foreignkey(id)
referencesSysuser(id);
altertableSysuseraddconstraintFK_Reference_12foreignkey(userstyleid)
referencesUserstyle(userstyleid)ondeletecascadeonupdatecascade;
altertableSysuseraddconstraintFK_Reference_14foreignkey(classesid)
referencesClasses(classesid)ondeletecascadeonupdatecascade;
/*存储过程:
查询选修某个老师课程的学生*/
createprocedurestu(@trchar(20))
as
selectSysuser.id,Sysuser.usernamefromSysuser,ScorewhereScore.id=Sysuser.idandScore.muidin
(selectmuidfromMdteacher,SysuserwhereMdteacher.id=Sysuser.idandSysuser.username=@tr);
/*授权*/
/*=====