《数据库与SQLServer》教学实习报告_第1页
《数据库与SQLServer》教学实习报告_第2页
《数据库与SQLServer》教学实习报告_第3页
《数据库与SQLServer》教学实习报告_第4页
《数据库与SQLServer》教学实习报告_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、天津农学院计算机科学与信息工程系数据库与sql server教学实习报告 1目 录1 内容简介12 需求分析12.1 组织结构分析12.2 业务流程分析22.3 数据处理分析32.4 其他各种限制和要求分析53 概念模型设计53.1 学生表局部e-r图53.2 教师表局部e-r图53.3 课程表局部e-r图53.4 成绩表局部e-r图63.5 全局e-r图74 逻辑设计74.1表结构74.2表联系84.3约束84.4视图84.5存储过程85 物理实现85.1 sql语句95.2调试过程131 内容简介随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各

2、个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对学生信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生信息管理的效率。设计学生信息管理的数据库,要使我熟悉数据库的设计、开发过程,掌握数据库设计、开发各阶段的方法,能够根据所给条件和要求,使用sql server实现所设计的数据库。2 需求分析2.1 组织结构分析学生基本信息一般包括学生的学号、姓名、性别、生日、出生地、政治面目、毕业院校、原籍住址、联系方式、所在系、所在专业、所在的班、学习成绩等。学生的学习成绩主要包括学习的课程以

3、及各个课程的成绩。学习的课程一般包括课程的课程号、课程名、所教授这门课程的老师。老师的信息一般包括老师的工号、姓名、年龄、性别、所在的院系。2.2 业务流程分析图1 业务流程分析图否是开始建立数据库学生信息管理系统建立或修改学生、教师、课程、成绩表建立或修改各表存储数据的存储过程建立或修改各表的约束和触发器进行调试是否达到要求?有无逻辑错误?往四个表里输入数据建立查看成绩视图结束2.3 数据处理分析查看教师信息课程信息成绩信息学生信息教务人员学生教师成绩课程录入学生信息录入成绩信息录入课程信息录入教师信息图2 数据流图表1 学生表的数据字典字段数据类型宽度是否空值备注学号char20否主键姓名

4、nvarchar50否性别nvarchar10否男或女出生年月datetime否出生地nvarchar50否政治面目nvarchar10否毕业院校nvarchar50否原籍住址nvarchar50否系别nvarchar50否专业nvarchar50否班级nvarchar50否宿舍nvarchar50否联系方式char20否是否有处分奖励nvarchar10否是否担任过班委nvarchar10否备注text是表2 教师表的数据字典字段数据类型宽度是否空值备注教师号char10否主键教师名nvarchar50否年龄char5否性别nvarchar10否男或女所在院系nvarchar50否备注tex

5、t是表3 课程表的数据字典字段数据类型宽度是否空值备注课程号char10否主键课程名nvarchar50否学分char5否教师号char10否外键备注text是表4 成绩表的数据字典字段数据类型宽度是否空值备注学号char20否外键当主键课程号char10否外键当主键成绩char10否数值0-100备注text是2.4 其他各种限制和要求分析如果删除学生表中记录的话,同时删除成绩表中相应的记录。3 概念模型设计3.1 学生表局部e-r图图3 学生表局部e-r图学生性别政治面目出生年月学号专业出生地系别班级原籍住址联系方式宿舍姓名是否有处分奖励毕业院校是否担任过班委3.2 教师表局部e-r图图4

6、 教师表局部e-r图教师教师号教师名年龄性别所在院系3.3 课程表局部e-r图图5 课程表局部e-r图课程课程号课程名学分教师号3.4 成绩表局部e-r图图6 成绩表局部e-r图成绩学号课程号碜成绩3.5 全局e-r图选课教授学生性别政治面目出生年月学号专业出生地系别联系方式宿舍姓名毕业院校是否担任过班委原籍住址是否有处分奖励班级成绩学号课程号碜成绩课程课程号课程名学分教师号教师教师号教师名年龄性别所在院系图7 全局e-r图4 逻辑设计4.1表结构学生(学号,姓名,性别,出生年月,出生地,政治面目,毕业院校,原籍住址,系别,班级,宿舍,联系方式,是否有过处分奖励,是否担任过班委,备注) 主键:

7、学号教师(教师号,教师名,年龄,性别,所在院系,备注) 主键:教师号课程(课程号,课程名,学分,教师号,备注) 主键:课程号 外键:教师号成绩(学号,课程号,成绩,备注) 主键:学号,课程号 外键:学号,课程号4.2表联系课程表依赖于教师表。成绩表依赖于课程表。成绩表依赖于学生表。4.3约束对于性别需要check约束。对于成绩的数值范围的用触发器约束。4.4视图创建视图方便用户查询,视图的列包括学号,姓名,课程,成绩4.5存储过程为了方便各个表的输入数据,为各个表建立存储过程。又建立一个删除数据的存储过程,删除学生表中的记录会同时删除成绩表中对应的记录。5 物理实现物理实现(sql语句),调试

8、过程(出现了什么问题,如何改正,如何改进系统性能)。必须有开发设计过程的截图。5.1sql语句建立数据库图8 创建数据库的sql语句截图建立学生表图9 创建学生表的sql语句截图建立教师表图10 创建教师表的sql语句截图建立课程表图11 创建课程表的sql语句截图建立成绩表图12 创建成绩表的sql语句截图约束对于性别的check约束。constraint 性别_che check(性别 in (男,女)。对于成绩的触发器约束图13 创建成绩的触发器约束的sql语句截图视图图14 创建查询成绩的视图的sql语句截图存储过程学生表存储过程图15 创建学生表添加数据的存储过程的sql语句的截图教

9、师表存储过程图16 创建教师表添加数据的存储过程的sql语句截图课程表存储过程图17 创建课程表添加数据的存储过程的sql语句的截图成绩表存储过程图18 创建成绩表添加数据的存储过程的sql语句的截图图19 创建学生表删除数据的存储过程的sql语句的截图5.2调试过程输入数据图20 使用各表的存储过程添加数据的sql语句的截图对成绩的数值约束进行测试图21 成绩的触发器约束成功实现的截图查看视图是否满足要求select * from 成绩_视图显示如下:图22 视图成功实现的截图在调试学生的触发器时出现问题图23 学生表删除数据触发器的sql语句的截图出现如图所示的问题:图24 测试触发器时发生的问题的截图成绩表引用学生表主键,那么就无法先删除学生表中的内容,除非成绩表中没有外键的引用,否则会出现外键约束错误!也就是说:要删除,必须要先删除成绩表中的内容,才可以删除学生表中的内容。所以这个问题无法用触发器实现。因为不能直接先删除a表中的内容。我想了这样一种方法:用存储过程,传入要删除的学生表中的id,然后删除成绩表和学生表中的对应的数据。sql语句为:create procedure 学生_proc 学号 intasdelete from 成绩 where 学号=学号delete from 学生 where 学号=学号测试的时候如下显示:图25 测试存储过程成功的截图图26 测

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论