数据库报告.docx
- 文档编号:13542026
- 上传时间:2023-06-15
- 格式:DOCX
- 页数:14
- 大小:300.30KB
数据库报告.docx
《数据库报告.docx》由会员分享,可在线阅读,更多相关《数据库报告.docx(14页珍藏版)》请在冰点文库上搜索。
数据库报告
数据库实验报告
课程名称:
数据库原理
实验名称:
数据库管理系统
学院名称:
信息工程学院
专业:
班级:
学号:
姓名:
评分:
教师:
2012年5月27日
一、实验目的
1.通过完成用户需求分析,系统概要设计,系统详细设计以及数据库的SQL操作具体实现等全过程,把前面的各个实验更好的地综合起来。
2.一步理解和掌握教材中的相关内容。
3.掌握分析和设计一个大型数据库的基本思路与方法。
二、实验要求
1.独立完成数据库的设计。
2.用SQL实现数据库的设计,并在SQLserver上调试通过。
3.写出查询,更新以及建立触发器的SQL语句和执行结果。
三、实验内容
综合前面各章内容设计并调试一教务管理系统,以MicrosoftVisualStudio2008作为前台开发工具,Microsoft SQLSERVER2000完成后台数据的管理。
创建教务管理系统所需要的表,实现对学生,教师,管理员不同身份对数据的查询与操作。
(学生可以进行密码修改,查看个人信息,选课的操作;教师可以进行密码修改,查看个人信息,录入学生成绩的操作;管理员可以对教师或学生的密码进行重置,个人信息进行修改的操作。
)
四、系统功能分析
系统功能分析框图:
4—1系统功能框图
五、需求分析
学生数据的管理:
通过登录系统,查询个人信息。
进行选课,可以从全校课程中选择所修课程。
且学生不能重复选课。
可以进行密码修改。
教师数据管理:
通过登录系统,查看个人信息。
教师可以从全校课程中选择任意课程,但每门课程只能有其中一位教师开课。
教师可以对选修了自己所开课程的学生进行成绩录入。
可以进行密码修改。
管理员功能:
管理员可以对教师或学生进行密码重置。
管理员可以修改学生或者教师的信息。
六、系统E—R图
图6-1 系统E—R图
七、关系模式
实体集联系转换为关系:
学生(学号,密码,姓名,性别,出生年月,地址,电话,邮箱,所在系,班级)
教师(工号,密码,姓名,性别,出生年月,职称,电话,邮箱,所在系)
课程(课程编号,课程名称,学时,学分)
m:
n联系转换为关系:
选课(学号,课程编号,成绩,状态)
授课(工号,课程编号,时间)
(“ ”表示 外键 )
八、数据库设计
(1)表的设计:
1.教师表
2.学生表
3.课程表
4.授课表
5.选课表
(2)SQL中规则,默认,触发器,存储过程的编写
1.规则Rule的编写:
性别规则:
CREATERULEsex_rule
AS@valueIN('男','女')
go
EXECsp_bindrule'sex_rule','Stu.sex'
EXECsp_bindrule'sex_rule','Teacher.sex'
成绩规则:
CREATERULEscore_rule
AS@valuebetween0and100
go
EXECsp_bindrule'score_rule','sc.grade'
2.默认Default的编写:
密码默认:
CREATEDEFAULTpassword_defaultAS'1111'
go
EXECsp_bindefault'password_default','Stu.psd'
EXECsp_bindefault'password_default','Teacher.psd'
3.触发器Trigger的编写:
在选课表中建立插入数据(INSERT)的触发器:
防止插入重复数据:
CREATETRIGGER选课_insertON[dbo].[sc]
FORINSERT
ASif(selectcount(*)
From选课,insertedwhere选课.Sno=
inserted.Snoand选课.Cno=inserted.Cno)>1
rollbacktransaction
维护关系完整性:
CREATETRIGGER选课_insert1ON选课
FORINSERT
ASIF(SELECTCOUNT(*)
FROMStu,inserted,课程
WHERE学生.Sno=
inserted.Snoand课程.Cno=inserted.Cno)=0
rollbacktransaction
在授课表中插入数据时的触发器:
防止插入重复数据:
CREATETRIGGER授课_inserteON[dbo].[授课]
FORINSERT
ASif(selectcount(*)
FROM授课,inserted
WHERE授课.Cno=
inserted.Cnoand授课.Jno=inserted.Jno)>1
rollbacktransaction
4.存储过程Procedure的编写:
学生登录存储过程:
CREATEPROCEDURE学生登录
@S#char(8),
@pvarchar(16)
AS selectcount(*)
from学生 whereSno=@S#andPsd=@p
GO
显示登录学生所选课程及成绩存储过程:
CREATEPROCEDURE学生课程
@S#char(8)
AS select课程.*,Grade
from课程,选课
where课程.Cno=选课.Cno andSno=@S#
GO
显示学生基本信息存储过程:
CREATEPROCEDURE学生信息
@S#char(8)
AS select*from学生whereSno=@S#
GO
学生基本信息修改存储过程:
CREATEPROCEDURE学生信息修改
@S#char(8),@namevarchar(20),@sexchar
(2),
@agechar(10),@deptvarchar(10)
AS update学生
setName=@Name,Sex=@Sex,Birdata=@Age,Dep=@Dept
whereSno=@S#
GO
学生密码修改存储过程:
CREATEPROCEDURE学生密码修改
@psdvarchar(16),
@numberchar(8)
ASupdate学生setPsd=@PsdwhereSno=@Number
GO
学生选课存储过程:
CREATEPROCEDURE课程选择
@S#char(8),
@C#char(4)
AS insertinto选课(Sno,Cno)values(@S#,@C#)
GO
教师登录存储过程:
CREATEPROCEDURE教师登录
@S#char(8),
@pvarchar(16)
AS selectcount(*)from教师
whereJno=@S#andPsd=@P
GO
教师密码修改:
CREATEPROCEDURE教师密码修改
@psdvarchar(16),
@numberchar(8)
AS update教师setPsd=@PsdwhereJno=@Number
GO
显示教师基本信息存储过程:
CREATEPROCEDURE教师信息
@S#char(8)
AS select*from教师
whereJno=@S#
GO
教师基本信息修改存储过程:
CREATEPROCEDURE教师信息修改
@S#char(8),
@namevarchar(20),
@sexchar
(2),
@agechar(10),
@deptvarchar(10)
AS update教师
setTeachername=@Name,Sex=@Sex,Birdata=@Age,Dep=@Dept
whereJno=@S#
GO
显示登录教师所开课程存储过程:
CREATEPROCEDURE教师课程
@S#char(8)
AS select授课.*,CN,Teachername,Address
from授课,教师,课程
where授课.Jno=教师.Jnoand授课.Cno=课程.Cno
and授课.Jno=@S#
GO
查看选修了该教师某一门课的所有学生:
CREATEPROCEDURE学生成绩
@C#char(4),
@J#char(8)
AS select选课.*,Jno
from授课,选课
where选课.Cno=授课.Cno and选课.Cno=@C#andJno=@J#
GO
学生成绩录入:
CREATEPROCEDURE学生成绩输入
@scorevarchar(3),
@numberchar(8),
@Cnumchar(4)
AS update选课setGrade=@ScorewhereSno=
@NumberandCno=(selectCnofrom课程whereCno=@Cnum);
GO
教师密码重置:
CREATEPROCEDURE教师密码修改
@numberchar(8)
AS update教师setPsd="1111"whereJno=@Number
GO
学生密码重置:
CREATEPROCEDURE学生密码修改
@numberchar(8)
AS update学生setPsd="1111"whereSno=@Number
GO
九、C#中的窗体设计
登录界面:
学生选课界面:
学生操作主界面:
学生密码修改界面:
教师开课界面:
学生成绩录入界面:
教师密码修改界面:
教师操作主界面:
十、实验小结
通过本次实验,掌握了分析和设计一个数据库系统的基本思路与方法。
进一步理解了教材中的有关内容。
熟悉了SQL语言,Transact-SQL语言中规则,默认,触发器,存储过程的编写,回顾了C#的有关知识,VS2008的基本操作等,有所收获。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 报告