《数据库与SQL Server》教学实习报告.docx

上传人:b****6 文档编号:7054802 上传时间:2023-01-16 格式:DOCX 页数:16 大小:686.16KB
下载 相关 举报
《数据库与SQL Server》教学实习报告.docx_第1页
第1页 / 共16页
《数据库与SQL Server》教学实习报告.docx_第2页
第2页 / 共16页
《数据库与SQL Server》教学实习报告.docx_第3页
第3页 / 共16页
《数据库与SQL Server》教学实习报告.docx_第4页
第4页 / 共16页
《数据库与SQL Server》教学实习报告.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

《数据库与SQL Server》教学实习报告.docx

《《数据库与SQL Server》教学实习报告.docx》由会员分享,可在线阅读,更多相关《《数据库与SQL Server》教学实习报告.docx(16页珍藏版)》请在冰豆网上搜索。

《数据库与SQL Server》教学实习报告.docx

《数据库与SQLServer》教学实习报告

天津农学院

计算机科学与信息工程系

 

《数据库与SQLServer》

教学实习报告

 

目录

1内容简介1

2需求分析1

2.1组织结构分析1

2.2业务流程分析2

2.3数据处理分析3

2.4其他各种限制和要求分析5

3概念模型设计5

3.1学生表局部E-R图5

3.2教师表局部E-R图5

3.3课程表局部E-R图5

3.4成绩表局部E-R图6

3.5全局E-R图7

4逻辑设计7

4.1表结构7

4.2表联系8

4.3约束8

4.4视图8

4.5存储过程8

5物理实现8

5.1SQL语句9

5.2调试过程13

1内容简介

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

作为计算机应用的一部分,使用计算机对学生信息进行管理,具有手工管理所无法比拟的优点。

例如:

检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高学生信息管理的效率。

设计学生信息管理的数据库,要使我熟悉数据库的设计、开发过程,掌握数据库设计、开发各阶段的方法,能够根据所给条件和要求,使用SQLServer实现所设计的数据库。

2需求分析

2.1组织结构分析

学生基本信息一般包括学生的学号、姓名、性别、生日、出生地、政治面目、毕业院校、原籍住址、联系方式、所在系、所在专业、所在的班、学习成绩等。

学生的学习成绩主要包括学习的课程以及各个课程的成绩。

学习的课程一般包括课程的课程号、课程名、所教授这门课程的老师。

老师的信息一般包括老师的工号、姓名、年龄、性别、所在的院系。

2.2业务流程分析

图1业务流程分析图

2.3数据处理分析

表1学生表的数据字典

字段

数据类型

宽度

是否空值

备注

学号

Char

20

主键

姓名

Nvarchar

50

性别

Nvarchar

10

男或女

出生年月

Datetime

出生地

Nvarchar

50

政治面目

Nvarchar

10

毕业院校

Nvarchar

50

原籍住址

Nvarchar

50

系别

Nvarchar

50

专业

Nvarchar

50

班级

Nvarchar

50

宿舍

Nvarchar

50

联系方式

Char

20

是否有处分奖励

Nvarchar

10

是否担任过班委

Nvarchar

10

备注

Text

表2教师表的数据字典

字段

数据类型

宽度

是否空值

备注

教师号

Char

10

主键

教师名

Nvarchar

50

年龄

Char

5

性别

Nvarchar

10

男或女

所在院系

Nvarchar

50

备注

Text

表3课程表的数据字典

字段

数据类型

宽度

是否空值

备注

课程号

Char

10

主键

课程名

Nvarchar

50

学分

Char

5

教师号

Char

10

外键

备注

Text

表4成绩表的数据字典

字段

数据类型

宽度

是否空值

备注

学号

Char

20

外键当主键

课程号

Char

10

外键当主键

成绩

Char

10

数值0-100

备注

Text

2.4其他各种限制和要求分析

如果删除学生表中记录的话,同时删除成绩表中相应的记录。

3概念模型设计

3.1学生表局部E-R图

图3学生表局部E-R图

3.2教师表局部E-R图

图4教师表局部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表结构

学生(学号,姓名,性别,出生年月,出生地,政治面目,毕业院校,原籍住址,系别,班级,宿舍,联系方式,是否有过处分奖励,是否担任过班委,备注)主键:

学号

教师(教师号,教师名,年龄,性别,所在院系,备注)主键:

教师号

课程(课程号,课程名,学分,教师号,备注)主键:

课程号外键:

教师号

成绩(学号,课程号,成绩,备注)主键:

学号,课程号外键:

学号,课程号

4.2表联系

课程表依赖于教师表。

成绩表依赖于课程表。

成绩表依赖于学生表。

4.3约束

对于性别需要check约束。

对于成绩的数值范围的用触发器约束。

4.4视图

创建视图方便用户查询,视图的列包括学号,姓名,课程,成绩

4.5存储过程

为了方便各个表的输入数据,为各个表建立存储过程。

又建立一个删除数据的存储过程,删除学生表中的记录会同时删除成绩表中对应的记录。

5物理实现

物理实现(SQL语句),调试过程(出现了什么问题,如何改正,如何改进系统性能)。

必须有开发设计过程的截图。

5.1SQL语句

建立数据库

图8创建数据库的SQL语句截图

建立学生表

图9创建学生表的SQL语句截图

建立教师表

图10创建教师表的SQL语句截图

建立课程表

图11创建课程表的SQL语句截图

建立成绩表

图12创建成绩表的SQL语句截图

约束

对于性别的check约束。

constraint性别_checheck(性别in('男','女'))。

对于成绩的触发器约束

图13创建成绩的触发器约束的SQL语句截图

视图

图14创建查询成绩的视图的SQL语句截图

存储过程

学生表存储过程

图15创建学生表添加数据的存储过程的SQL语句的截图

教师表存储过程

图16创建教师表添加数据的存储过程的SQL语句截图

课程表存储过程

图17创建课程表添加数据的存储过程的SQL语句的截图

成绩表存储过程

图18创建成绩表添加数据的存储过程的SQL语句的截图

图19创建学生表删除数据的存储过程的SQL语句的截图

5.2调试过程

输入数据

图20使用各表的存储过程添加数据的SQL语句的截图

对成绩的数值约束进行测试

图21成绩的触发器约束成功实现的截图

查看视图是否满足要求

select*from成绩_视图

显示如下:

图22视图成功实现的截图

在调试学生的触发器时出现问题

图23学生表删除数据触发器的SQL语句的截图

出现如图所示的问题:

图24测试触发器时发生的问题的截图

成绩表引用学生表主键,那么就无法先删除学生表中的内容,除非成绩表中没有外键的引用,否则会出现外键约束错误!

也就是说:

要删除,必须要先删除成绩表中的内容,才可以删除学生表中的内容。

所以这个问题无法用触发器实现。

因为不能直接先删除A表中的内容。

我想了这样一种方法:

用存储过程,传入要删除的学生表中的ID,然后删除成绩表和学生表中的对应的数据。

SQL语句为:

createprocedure学生_proc@学号int

as

deletefrom成绩where学号=@学号

deletefrom学生where学号=@学号

测试的时候如下显示:

图25测试存储过程成功的截图

图26测试存储过程成功实现发的截图

完成了删除。

参考文献

[1]张龙祥黄正端龙军.《数据库原理与设计(第二版)》,北京:

人民邮电出版社,2007

[2]张莉.《SQLServer数据库原理及应用(第二版)》,北京:

清华大学出版社,2009

[3]李昆.《SQLServer2000课程设计案例精编》,中国水利水电出版社,2006

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

当前位置:首页 > 幼儿教育 > 幼儿读物

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

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