教务管理系统大数据库设计.docx

上传人:b****7 文档编号:10778626 上传时间:2023-02-22 格式:DOCX 页数:20 大小:161.96KB
下载 相关 举报
教务管理系统大数据库设计.docx_第1页
第1页 / 共20页
教务管理系统大数据库设计.docx_第2页
第2页 / 共20页
教务管理系统大数据库设计.docx_第3页
第3页 / 共20页
教务管理系统大数据库设计.docx_第4页
第4页 / 共20页
教务管理系统大数据库设计.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

教务管理系统大数据库设计.docx

《教务管理系统大数据库设计.docx》由会员分享,可在线阅读,更多相关《教务管理系统大数据库设计.docx(20页珍藏版)》请在冰豆网上搜索。

教务管理系统大数据库设计.docx

教务管理系统大数据库设计

 

第一章:

项目计划

1.1项目背景:

教务系统管理平台充分利用互联网络B/S管理系统模式,以网络为平台,为各个学校教务系统的管理提供一个平台,帮助学校管理教务系统,用一个账号解决学校教务教学管理,并且学校可以自由选择学校需要的教务管理系统,灵活地定制符合学校自己实际情况的教务系统.

1.2系统开发目的:

提高学生,老师管理和操作事务的运作效率。

1.3定义:

学生选课和老师评分必须在管理员的设置条件下进行。

 

第二章:

详细分析

2.1、系统功能

设置学期时间:

管理员登录系统后设置学期的时间,只有当时间为某个状态时,其他角色例如老师,才能做某些事情。

学期时间只能由角色管理员操作:

包括对学期时间表的增加,删除,对某个学期时间状态的改变。

学生选课:

当管理员设置为学期开始时,学生可以选课,学生选课受学分影响,只能选择总学分为多少的课程。

老师评分:

当管理员设置为学期评分时,老师才可以评分。

个人信息管理:

对自己个人信息进行添加和修改。

成绩查询:

学生可以对自己成绩进行查询。

个人课表查询:

按时间的不同,每个角色都有自己不同的课表。

2.2、系统结构

功能描述:

学生选课和老师评分必须在管理员设置学期的条件下进行。

2.3、数据流图

顶层图

0层图

2.4、户类型与职能

(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

20

f

Notnull

班级编号

Userstyleid

Varchar

10

f

Notnull

角色编号

Username

Varchar

10

Notnull

用户名

Password

Varchar

10

Notnull

密码

Sex

Varchar

2

Notnull

性别

Address

Varchar

50

住址

Phone

Varchar

10

电话

 

选课成绩表(Score)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

Scid

int

P

Notnull

选课成绩编号

id

Varchar

20

F

Notnull

用户名称

Muid

Int

F

Notnull

课程编号

Itemid

Varchar

20

F

Notnull

学期编号

Pacgrade

Int

平时成绩

Endgrade

Int

期末成绩

Syngrade

Int

综合成绩

 

班别表(Classes)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

Classesid

varchar

20

P

Notnull

班别编号

Classesname

Varchar

10

Notnull

班别名称

Classescontext

Varchar

50

Notnull

班别描述

 

系别表(Dept)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

Deptid

varchar

20

P

Notnull

系别编号

Deptname

Varchar

10

Notnull

系别名称

Deptphone

Varchar

10

系电话

Deptaddress

Varchar

20

系地址

学期时间表(Items)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

Itemsid

varchar

20

P

Notnull

学期编号

Itname

Varchar

10

Notnull

学期名称

Starttime

Data

10

学期开始时间

Endtime

Data

10

学期结束时间

Itstate

Varchar

10

Notnull

学期状态

 

课程表(Major)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

MDid

varchar

20

P

Notnull

课程编号

Mdname

Varchar

10

Notnull

课程名称

Mdcredit

Varchar

10

Notnull

课程学分

Mdstyle

Varchar

10

Notnull

课程类型

Mdstudytime

varchar

10

课程学时

 

课室表(Classroom)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

Roomed

varchar

20

P

Notnull

课室编号

Roomname

Varchar

10

Notnull

课室名称

Area

Int

Notnull

面积

Maxnum

Int

Notnull

最大人数

 

角色表(Userstyle)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

Usersyleid

varchar

20

P

Notnull

角色编号

Userstylename

Varchar

10

Notnull

角色名称

Permission

Varchar

10

Notnull

权限

 

教师授课表(Mdteacher)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

Muid

Int

P

Notnull

授课编号

Id

Varchar

10

F

Notnull

用户编号

Mdid

Varchar

10

F

Notnull

课程编号

Mtime

Datetime

10

Notnull

授课时间

 

上课地点表(Majorroom)

字段名

字段类型

长度

主/外键

字段值约束

对应中文名

Mrid

varchar

20

P

Notnull

上课地点编号

Roomid

Varchar

10

F

Notnull

课室编号

Mdid

Varchar

10

F

Notnull

课程编号

第五章:

源码

/*==============================================================*/

/*触发器:

删除已存在表*/

/*==============================================================*/

ifexists(select*fromsysobjectswhereid=object_id('Classes'))

droptableClasses

GO

ifexists(select*fromsysobjectswhereid=object_id('Classroom'))

droptableClassroom

GO

ifexists(select*fromsysobjectswhereid=object_id('Dept'))

droptableDept

GO

ifexists(select*fromsysobjectswhereid=object_id('Items'))

droptableItems

GO

ifexists(select*fromsysobjectswhereid=object_id('Major'))

droptableMajor

GO

ifexists(select*fromsysobjectswhereid=object_id('Majorroom'))

droptableMajorroom

GO

ifexists(select*fromsysobjectswhereid=object_id('Mdteacher'))

droptableMdteacher

GO

ifexists(select*fromsysobjectswhereid=object_id('Score'))

droptableScore

GO

ifexists(select*fromsysobjectswhereid=object_id('Sysuser'))

droptableSysuser

GO

ifexists(select*fromsysobjectswhereid=object_id('Userstyle'))

droptableUserstyle

GO

 

/*==============================================================*/

/*Table:

Classes*/

/*==============================================================*/

createtableClasses

classesidvarchar(20)notnull,

deptidvarchar(20),

classnamevarchar(20)unique,

clacontextvarchar(50),

primarykey(classesid)

go

/*==============================================================*/

/*Table:

Classroom*/

/*==============================================================*/

createtableClassroom

roomidvarchar(20)notnull,

roomnamevarchar(20)unique,

areaintcheck(area>0),

maxnumintcheck(maxnum>0),

primarykey(roomid)

go

/*==============================================================*/

/*Table:

Dept*/

/*==============================================================*/

createtableDept

deptidvarchar(20)notnull,

deptnamevarchar(20)unique,

depphonevarchar(10),

primarykey(deptid)

go

/*==============================================================*/

/*Table:

Items*/

/*==============================================================*/

createtableItems

itemsidintnotnullIDENTITY,

itnamevarchar(20),

starttimedatetime,

endtimedatetime,

itstatevarchar(10)check(itstatein(‘0’,’1’,’2’)),

primarykey(itemsid)

go

/*==============================================================*/

/*Table:

Major*/

/*==============================================================*/

createtableMajor

MDidvarchar(20)notnull,

MDnamevarchar(10)unique,

MDcreditint,

MDstylevarchar(10)check(MDstylein(‘公选课’,’选修课’)),

MDstudytimeintcheck(MDstudytime>0),

primarykey(MDid)

go

/*==============================================================*/

/*Table:

Majorroom*/

/*==============================================================*/

createtableMajorroom

MRidintnotnullIDENTITY,

roomidvarchar(20),

MDidvarchar(20),

primarykey(MRid)

go

/*==============================================================*/

/*Table:

Mdteacher*/

/*==============================================================*/

createtableMdteacher

muidintnotnullIDENTITY,

idvarchar(20),

MDidvarchar(20),

Mtimedatetime,

primarykey(muid)

go

/*==============================================================*/

/*Table:

Score*/

/*==============================================================*/

createtableScore

scidintnotnullIDENTITY,

idvarchar(20),

muidint,

itemsidint,

pacgradeint,

endgradeint,

syngradeint,

primarykey(scid)

go

/*==============================================================*/

/*Table:

Sysuser*/

/*==============================================================*/

createtableSysuser

idvarchar(20)notnull,

classesidvarchar(20),

userstyleidvarchar(10),

usernamevarchar(20)unique,

passwordvarchar(10),

sexvarchar(10)check(sexin(‘男’,’女’)),

addressvarchar(50),

phonevarchar(20),

primarykey(id)

go

/*==============================================================*/

/*Table:

Userstyle*/

/*==============================================================*/

createtableUserstyle

userstyleidvarchar(10)notnull,

userstylenamevarchar(20)unique,

permissionvarchar(50),

primarykey(userstyleid)

go

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)

referencesMajor(MDid)ondeletecascadeonupdatecascade;

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);

 

/*==============================================================*/

/*授权*/

/*================

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 远程网络教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1