资源描述
高校学籍管理系统
数据库设计阐明书
学 院:信 息 学 院
专 业:
学 生:
学 生:
指引教师:
【1月17日星期四】
数据库设计阐明书
1、引言
1.1编写目
随着高校办学规模扩大和招生人数增长,学籍管理维护是学校管理中异常重要一种环节,作为学校,除了育人,就是育知,学生成绩管理计算机化是整个学校教务管理中重要一某些,介于它重要性,学生成绩管理系统开发与应用就逐渐提入议程,并占着越来越重要份量。
运用学生成绩管理维护系统可以减轻学院教学人员工作量,缩小开支,提高工作效率与精确率,可以节约时间,学生也可以尽快懂得自己考试成绩,投入新课程学习或复习这次没有考过课程。而学生成绩管理系统应用也为今天民办教诲在将来市场竞争力有所提高。
在当代高科技奔腾发展,人们工作习惯变化,特别是电脑大量普及,人们生活节奏越来越快,如何提高工作效率是人们一方面考虑问题。学生成绩管理是一种非常繁琐与复杂一项工作,一种因素就是工作量大,不好管。对于一种学校而言,管理好学生成绩,是非常重要。因而开发出一套学生成绩管理系统是非常必要。
1.2背景
a.待开发软件系统名称:
高校学籍管理系统
b.本项目任务提出者:
c.本项目开发者:
d.本项目顾客:
大学学籍管理工作者、教师、学生
1.3参照资料
SQL Server 实验指引(第三版)马晓梅
2构造设计
2.1逻辑构造设计
2.1.1学生实体E-R图
2.1.2学院实体E-R图
2.1.3教师实体E-R图
2.1.4课程实体E-R图
2.1.5专业实体E-R图
2.1.6奖惩实体E-R图
2.1.7课程实体E-R图
2.1.8授课实体E-R图
2.1.9班级实体E-R图
2.1.10整体实体关系E-R图
2.2关系图
2.3物理构造设计
Student表:
列名
阐明
类型
备注
sno
学号
varchar(10)
不容许空,主键
sname
姓名
varchar(10)
不容许空
ssex
性别
char(2)
不容许空
nation
民族
char(10)
不容许空
sage
年龄
tinyint
不容许空
symbol
政治面貌
varchar(8)
容许空
mno
专业号
char(10)
不容许空
id
身份证号
varchar(20)
不容许空
birthplace
籍贯
varchar(10)
容许空
homeaddr
家庭地址
varchar(30)
容许空
intime
入学时间
varchar(20)
不容许空
class
班级
varchar(10
容许空
classid
班级号
int
不容许空
Course表:
列名
阐明
类型
备注
cno
课程号
varchar(5)
不容许空,主键
cname
课程名
varchar(15)
容许空
credit
学分
smallint
容许空
mno
专业号
char(10)
不容许空
ctime
学时
smallint
容许空
Teacher表:
列名
阐明
类型
备注
tno
教工号
char(10)
不容许空,主键
tname
姓名
varchar(10)
容许空
tsex
性别
char(2)
容许空
profess
职称
varchar(10)
容许空
dmpno
学院号
varchar(10)
不容许空
tel
电话
int
容许空
Tc表:
列名
阐明
类型
备注
cno
课程号
vatchar(5)
不容许空,主键
tno
教工号
char(5)
不容许空,主键
Class表:
列名
阐明
类型
备注
classid
班级号
int
不容许空,主键
class
班级
varchar(10)
不容许空
mno
专业号
char(10)
不容许空
number
人数
tinyint
容许空
Sc表:
列名
阐明
类型
备注
sno
学号
vatchar(10)
不容许空,主键
cno
课程号
vatchar(5)
不容许空,主键
grade
成绩
float
容许空
Major表:
列名
阐明
类型
备注
mno
专业号
vatchar(10)
不容许空,主键
mname
专业名
vatchar(20)
容许空
dmpno
学院号
vatchar(20)
容许空
Collage表:
列名
阐明
类型
备注
dmpno
学院号
vatchar(10)
不容许空,主键
dname
学院名
vatchar(20)
容许空
dmphead
院长名
vatchar(20)
容许空
Award表:
列名
阐明
类型
备注
ano
奖励号
vatchar(10)
不容许空,主键
sno
学号
vatchar(10)
不容许空
award
奖励
vatchar(20)
容许空
rank
奖励级别
vatchar(20)
容许空
time
获奖时间
vatchar(20)
容许空
3、存储过程
use wdd
go
create procedure pp
@sno_in varchar(10),
@sname_out varchar(10) output,
@cname_out varchar(15) output,
@grade_out float output
as select @sname_out=sname,@cname_out=cname,@grade_out=grade from student,sc,course1
where student.sno=@sno_in and student.sno=sc.sno and o=o
use wdd
go
declare @sno_in varchar(10),
@sname_out varchar(10),
@cname_out varchar(15),
@grade_out float
select @sno_in='508044'
exec pp @sno_in,@sname_out output,@cname_out output,@grade_out output
print @sname_out
print @cname_out
print @grade_out
4、触发器
4.1更新学生表
use wdd
go
create trigger t3
on student for update
as
declare @class_old varchar(10),
@mno_old char(10),
@class_new varchar(10),
@mno_new char(10)
select @class_old=class from deleted
select @mno_old=mno from deleted
select @class_new=class from inserted
select @mno_new=mno from inserted
update class set number=number-1 from class where class=@class_old and mno=@mno_old
update class set number=number+1 from class where class=@class_new and mno=@mno_new
4.2删除学生表
use wdd
go
create trigger t2
on student for delete
as
declare @class_read varchar(10),
@mno_read char(10)
select @class_read=class from deleted
select @mno_read=mno from deleted
update class set number=number-1 from class where class=@class_read and mno=@mno_read
4.3插入学生表
use wdd
go
create trigger t1
on student for insert
as
declare @class_read varchar(10),
@mno_read char(10)
select @class_read=class from inserted
select @mno_read=mno from inserted
update class set number=number+1 from class where class=@class_read and mno=@mno_read
5、数据库恢复与备份
数据库完全备份
backup database wdd
to disk ='f:\备份数据库\wdd'
with init
go
数据库恢复
restore database wdd
from disk = 'f:\备份数据库\wdd'
with recovery
go
数据库差别备份
backup database wdd
to disk ='f:\备份数据库\wdd'
with init
go
数据库恢复
restore database wdd
from disk = 'f:\备份数据库\wdd'
with norecovery
go
restore database wdd
from disk = 'f:\备份数据库\wdd'
with file=2
go
展开阅读全文