《数据库》实训计划课程名称:数据库原理及应用一、课程简介《数据库原理及应用》课程是我院计算机科学与技术专业的一门重要专业课程,是一门理论性和实践性都很强的面向实际应用的课程,它是计算机科学技术中发展最快的领域之一。
可以说数据库技术渗透到了工农业生产、商业、行政管理、科学研究、教育、工程技术和国防军事等各行各业。
因此本课程的教学既要向学生传授一定的数据库理论基础知识,又要培养学生运用数据库理论知识和数据库技术解决实际应用问题的能力。
二.课程实验实验题目1.学籍管理系统2.图书档案管理系统3.企业人事管理系统4.工资管理系统5.用户和权限管理系统。
6.仓库管理系统。
7.企业进销存管理系统。
8、超市管理系统10、酒店管理系统11、旅游管理系统12、高考成绩信息管理系统13、医院信息管理系统14、银行计算机储蓄系统15、 ICU监护系统16、可自拟题目任选一题按照下列实验纲要进行设计。
实验纲要1、实验目标本课程实验教学的目的和任务是使学生通过实践环节深入理解和掌握课堂教学内容,使学生得到数据库应用的基本训练,提高其解决实际问题的能力。
2、实验内容数据库的模式设计;数据库、表、视图、索引的建立与数据的更新;关系数据库的查询,包括嵌套查询、连接查询等;数据库系统的实现技术,包括事务的概念及并发控制、恢复、完整性和安全性实现机制;简单数据库应用系统的设计实现。
给定一实际问题,让学生自己完成数据库模式的设计,包括各表的结构(属性名、类型、约束等)及表之间的关系,在选定的DBMS上建立数据库表。
用SQL命令和可视化环境分别建立数据库表,体会两种方式的特点。
3、实验教学重点本课程的实验教学重点包括:⑴数据库的模式设计;⑵SQL的数据查询;⑶并发控制、恢复、完整性和安全性实现机制;⑷简单数据库应用系统的设计实现;实验1:数据库的创建实际问题的模式设计中至少要包括3个基本表,问题可以是上述四个实验题目的任何一个。
由学生自己选定。
定义基本表、视图和关键字等。
实验2:数据库中数据的更新在实验1的基础上,对已建好的各表输入适当的数据并练习数据的删除和修改,注意检测键码约束、外码约束、非空约束、唯一约束、取值约束等各种约束在输入数据及数据的删除、修改时的作用,结合课堂教学体会其含义。
同时练习索引、视图的建立与删除等。
实验3:数据库中数据的查询在实验1和实验2的基础上,练习查询语句的使用,包括简单查询、嵌套查询、连接查询及EXISTS查询等,体会各种查询的异同及相互之间的转换,体会各种查询的执行过程,为简单综合应用打下良好的基础。
实验4:简单应用系统的实现通过前3个实验,对数据库的基本操作有了一定的掌握。
本实验综合运用前面掌握的内容并进行综合应用。
选定一种开发工具(VB、VC等)设计实现一个简单的数据库应用系统,包括数据的插入、删除、修改、查询、统计等功能,做到界面友好、使用方便。
实验条件:硬件环境:软件环境:操作系统为Windows xp,数据库环境为SQL Server 2000。
四、本课程内容梳理及应用领域、应用方法讲解下面我们结合一个具体实例----学生学籍管理信息系统,简单讲解一下管理信息系统软件开发的基本过程,并较为详细地阐述数据库的需求分析、概念模型设计、逻辑设计和物理设计的实现方法。
在开发这个软件的过程中,体会如何把数据库理论与实际应用结合起来以及如何按照软件工程的思想来开发软件。
开发一个完善的软件产品是相当不容易的,一般都需要经历问题定义、可行性研究、需求分析、总体设计、详细设计、程序设计、测试和维护这么几个阶段,而且开发总是迭代往复的过程。
1.需求分析我们在接到一个软件项目后,首先要对问题进行需求分析。
首先调查与分析设计的对象,对所有可能的数据库用户的数据要求和处理要求,进行全面的了解、收集和分析。
学生学籍管理一直是学校的一项重要但又非常烦琐的管理工作。
学生学籍管理工作主要有:(1)记录学生档案的相关情况;(2)记录学生课程成绩的相关情况;(3)管理学生的异动情况;(4)管理学生课情况。
采用手工的办法来管理学生学籍已不能适应学校目前的形势,因为这种传统的手工管理办法既费时又费力,而且还容易出错,因此用计算机来管理学生的学籍信息很有必要。
通过分析,学生学籍管理的主要内容有:(1)学生基本情况(学号、姓名、性别、出生日期、入学时间、班级、系部、政治面貌、籍贯、简历);(2)学生成绩表(学号、姓名、课程名称、成绩);(3)课程情况(课程编号、课程名称);(4)选课情况(学号、姓名、课程名称);5)任课教师基本情况(教师编号、教姓名、性别、出生日期、政治面貌、籍贯、简历)。
教务管理人员使用这个系统可以管理学生的基本情况、学生的学习情况。
学生使用这个系统可以查看自己的学习成绩。
教师使用这个系统可以查看开课情况和所教学生的基本情况。
2、总体设计主要从总体宏观角度完成功能设计和数据库逻辑设计,为系统搭建一个框架。
功能设计(1)学生基本情况的录入、查询、修改、删除和打印;(2)教师基本情况的录入、查询、修改、删除和打印;(3)课程信息的录入、查询、修改、删除和打印;(4)学生成绩的录入、查询、修改、删除和打印;(5)系统辅助功能,如登录、用户管理等;数据库逻辑设计逻辑结构设计的任务是按照一定的规则,将概念模型转化为某种数据库管理系统所能接受的数据模型。
这个数据模型需要经过优化处理,并适当考虑完整性、安全性、一致性以及恢复和效率等一系列有关数据库性能的因素。
同时还要避免数据库的插入异常和删除异常。
(1)ER模型设计数据库的概念模型是独立于任何计算机系统的信息结构模型,采用ER模型来描述这个信息结构模型是非常合适的方法。
如图2.1所示。
(2)表设计ER模型设计完成后,再把ER模型中的实体集转换成表。
在这个过程中,某些联系也应转换成表,有些表中应适当增加属性。
有些表中的属性应适当删除。
学生基本情况实体集可转换成一个表,其中学号是主关键字,姓名不能作为主关键字,因为在一个学校中,学生重名的情况是普遍的。
其他实体集也同样可以转换成相应的表。
选课联系应设计成一个表,该表包括学号、课程编号和成绩两个属性。
由学号就可以在学生基本情况表中查到学生的基本信息,由课程编号就可以在课程表中查到课程名称,在这个选课表中由学号和课程编号共同组成主关键字,单一的学号或课程编号都不能组成主关键字,但都是外关键字,因为学号在学生基本情况表中是主关键字,课程编号在课程表中是主关键字。
(3)具体表结构设计在数据库应用系统的开发过程中,数据表的结构设计是非常重要的一个环节,数据表结构的好坏将直接影响应用系统的效率以及实现的效果,好的数据库结构设计会减少数据库的存储量,还能提高数据库的完整性和一致性,使系统具有较快的响应速度,还能简化基于此数据库应用程序的实现等。
在数据表开始设计的时候应该尽量考虑全面,尤其应该仔细考虑用户的各种需要,避免浪费不必要的人力和物力。
●学生基本情况表StudentInfo字段名称中文含义数据类型可否为空StudentID 学号CHAR 8 Not nullName 姓名CHAR 8 Not NullSex 性别CHAR 2 NullGrade 年级CHAR 4 NullDepartmentID 院系编号CHAR 6 Not NullSpeciality 专业CHAR 8 NullBirthday 出生日期Date Not nullPolity 政治面貌CHAR 4 NullResume 简历varchar 50 Null●课程表CourseInfo字段名称中文含义数据类型可否为空CourseID 课程号CHAR 6 Not nullName 课程名CHAR 20 Not NullCreditHour 学分INT Not NullTeacherID 任课教师编号CHAR 6 Not Null●选课表StudentCourse字段名称中文含义数据类型可否为空StudentID 学号CHAR 8 Not nullCourseID 课程编号CHAR 6 Not NullGrade 成绩int Null●教师基本情况表TeacherInfo字段名称中文含义数据类型可否为空院系表DepartmentInfo3、系统结构设计在第九章的网络数据库系统中,我们学习了三层结构的客户机/服务系统,其体系结构如图3.1所示。
3.1图所示的结构把应用功能分成界面表示层、应用功能层和数据服务层。
其中界面表示层是应用的接口部分,它担负着用户与应用间的对话功能。
应用功能层由应用服务器实现,是应用的主体,也是应用逻辑处理的核心,是具体的业务实现。
应用服务器一般和数据库服务器有密切的交往,应用服务器项数据库服务器发送SQL请求,数据库服务器将数据访问结果返回给应用服务器。
数据服务层就是DBMS,驻留在数据库服务器上,负责管理对数据库数据的存取操作。
它接受应用服务器提出的SQL请求,完成数据的存储、访问和完整性约束检查等。
按照三层体系结构的技术思想,该系统也应把功能分成三个层次。
界面表示层需要考虑三类用户,分别是教务管理人员、学生和教师。
界面设计应简单和直观。
应用功能层完成主要业务功能,如学生成绩汇总、计算平均成绩等。
数据层主要存储与学生有关的所有数据信息。
4、数据库实现学生学籍数据库系统设计完成后,我们就要考虑实现了。
首先要选择一个实现环境。
目前,关系数据库产品很多,每一种产品都有其适应的领域。
考虑到我们所设计的数据库系统需要在网络环境下运行,所管理的数据库容量不算太大,可选择SQL SERVER 2000数据库产品。
首先建立一个名为STUDENT的数据库,再在其中建立数据表、索引、触发器和存储过程。
为了实现这个网络数据库系统,客户端和应用服务器端的开发环境可选择DELPHI。
由于学生选课是在网络上进行,因此采用ASP技术设计成浏览器页面是一个合理的设计。
因为这样不需要额外的客户端应用界面安装。
系统使用SQL SERVER作为后台数据库,用DELPHI制作应用程序来访问数据库,这就需要设置DELPHI与数据库的连接与访问。
DELPHI支持的数据库连接技术非常多,如BDE技术、ODBC技术和ADO技术等。
由于数据库是SQL SERVER,所以选择ADO技术比较好,操作简单方便。
由于系统实现涉及到DELPHI编程技术、数据库技术细节,在此不作更详细的说明。
5、测试与维护测试就是找出系统中的错误,要从基本模块开始逐一测试。
要尽可能设计完备的测试用例。
经过严格测试后,系统就可以交给用户使用了。
如果用户在使用过程中,发现了错误,需要开发人员对产品进行维护。
通过开发这样一个数据库应用系统,就可以把我们所学过的数据库主要内容串联起来,从而使得高深的数据库理论不再抽象了。