《数据库系统概论》课程设计报告题目:个人信息管理系统专业:网络工程班级:姓名:指导教师:成绩:计算机学院2017年12月8日目录一课程设计的目的与意义 (2)1.1课程设计的目的 (2)1.2 课程设计的意义 (3)二需求分析 (4)2.1 用户需求 (4)2.2 系统需要实现的功能和操作如下 (5)2.3 功能需求分析: (5)三数据库概念模型设计 (7)四数据库逻辑模型设计 (12)4.1 一般逻辑模型设计: (12)4.2 具体逻辑模型设计: (13)五数据库物理设计与数据库保护设计 (17)5.1 设计表间关系 (17)5.2 物理设计 (18)5.3 保护设计 (19)六数据库建立 (20)七课程设计心得与体会 (25)八参考资料 (26)一课程设计的目的与意义1.1课程设计的目的数据库课程设计是数据库系统原理实践环节的极为重要的部分,其目的是:(1)培养学生能够应用数据库系统原理在需求分析的基础上对系统进行概念设计,学会设计局部ER图,全局ER图;(2)培养学生能够应用数据库系统在概念设计的基础上应用关系规范化理论对系统进行逻辑设计,学会在ER图基础上设计出易于查询和操作的合理的规范化关系模型;(3)培养学生能够应用SQL语言对所设计的规范化关系模型进行物理设计,并且能够应用事务处理,存储过程,触发器以保证数据库系统的数据完整性,安全性,一致性,保证数据共享和防止数据冲突;(4)培养学生理论与实际相结合的能力,使之能够熟练掌握一种数据库系统(如SQL SERVER)的使用,培养学生开发创新能力;(5)通过设计实际的数据库系统应用课题,使学生进一步熟悉数据库管理系统的操作技术,提高学生独立分析问题,解决问题,查阅资料以及自学的能力,以适应计算机产业日新月异发展的形势;提高和加强学生的计算机应用与软件开发能力,使学生有初学者向专业的程序员过渡1.2 课程设计的意义目前,我国在计算机应用,计算机软件和电子类相关专业的人才培养方面取得了长足发展,但同时也让我们深刻地感觉到缺乏实际开发设计项目的经验,不善于综合运用所学理论,对知识的把握缺乏融会贯通的能力,尤其是我们计算机专业大学生,由于缺乏具体项目经验,毕业之后普遍感到知识不能转化为能力。
课程设计可以锻炼我们理论联系实际的能力,为今后工作做铺垫。
借于这次我们所选的课程题目,让我们有了一个很好的动手操作机会。
众所周知,在当今社会,大学生的数量每年都是只增不减,对于学生而言,随着个人学历以及社会阅历的日益渐增,我们每天或一段时间内需要处理的事情也渐渐增多,其中有很多事情对于今后一段时间的生活有很大关联。
例如,我们认识了许多新朋友,如何把他们的联系方式有效安全的保存下来,或者把我们近期的消费数目记录下来,又或者有一些事情对于自己近期的生活有很大关联,如何把它们行之有效的保存下来,并且能够及时通知自己,这都是我们想迫切处理的问题。
本课程设计就是要专门解决这些问题,由于这个项目只是以小组形式设计,有许多问题我们可能还没有想到或接触到。
因此本设计与开发也仅是一个尝试性的工作,但其中有很多重要的思想和方法,涉及一些重要的程序代码,对于研究开发该类程序的工程人员可以起到一个抛砖引玉的作用。
二需求分析2.1 用户需求本系统就是一个面向广大在校大中专院校学生的个人信息管理系统,当然了,对于那些已经参加工作或已经毕业的朋友同样适用。
此系统是一种比较经济耐用的管理系统,它面向所有在校学生,但具有比较高的安全性能。
它能够实现信息管理的基本功能,包括新信息的录入,查询,信息的删除等操作以及后台数据库的备份和恢复。
用户合法注册后必须输入用户账户和密码才能成功进入该系统,以此保证了信息的安全性和个人隐私,进入该系统后可以依照自己的想法进入相应的功能模块,进行信息的查看,录入,更新等基本操作。
对于非法操作,系统有识别和防护措施。
个人信息管理的特点是能够存放的信息比较多,所管理的信息种类繁多,为了给用户一个很好的使用平台,内部使用设计以菜单或按钮形式给出。
对于查询和更新的方式设置了一个统一标准,因此在使用和管理起来非常方便。
本系统在设计过程中,为了克服一些困难,需要使程序代码标准化,软件统一化,确保软件的可维护性和使用性,删除不必要的管理冗余,实现管理规范化,科学化。
界面友好,简单化,做到实用,方便,尽量满足广大使用者的需求。
2.2 系统需要实现的功能和操作如下:(1)登录功能:登录系统为身份验证登陆,用户输入用户账户和密码后才能进入该系统,若输入有误,系统会给出警告,三次错误后,需等待半个小时后才能再次输入,以此保证了系统的安全性。
(2)更新信息功能:用户进入系统后,找到相应的所属功能模块,然后根据自己的需要,可以删除一些已经对自己没有任何用处的信息,或者重新输入自己要保存的信息。
(3)查询功能:用户进入系统后,找到相应的所属功能模块,然后根据内容输入或根据关键字进行查询,查询出的信息会显示在界面上,并且可以预览和打印出结果。
(4)系统维护功能:数据的安全管理,主要是依靠管理员对数据库里的信息进行备份和恢复,数据备份后,如果出了什么意外可以恢复数据库到当时备份的状态,这提高了系统和数据的安全性,有利于系统的维护;进行以上功能操作处理时,可根据下述的功能分析中的主要结构功能模块图进行。
2.3 功能需求分析:本系统的主要结构功能图如下:三数据库概念模型设计基本项构思ERD的四项基本原则:(1)原则1(确定实体):能独立存在的事物,例如人,物,事,地,团体,机构等,在其有多个由基本项描述的特性需要关注时,就应把它作为实体。
(2)原则2(确定联系):两个或多个实体间的关联与结合,如主管,从属,组成,占有,包含,配合等等,当需要予以关注时,应作为联系。
实体间的联系可划分为一对一,一对多,多对多等三类,在确定联系时还要确定其类型。
(3)原则3(确定属性):实体的属性是实体的本质特征。
实体应有标志属性(能把不同个体区分开来的属性组),并指定其中一个作为主标识,联系的属性是联系的结果或状态。
(4)原则4(一事一地):信息分析中得到的基本项要在且仅在实体联系图中的一个地方作为属性出现。
经过上述系统功能分析和需求总结,设计如下面所示的数据项和数据结构。
用户表(Users):用于存放注册用户的记录,包括数据项:用户账户,密码,真实姓名,身份证号,联系电话,联系地址,性别,出生年月等。
联系人类别表(ContactClass):用于存放初始的联系人类别记录,包括数据项:类别名称。
联系人表(Personcontact):用于存放联系人记录,包括数据项:姓名,性别,联系电话,传真,出生年月,联系地址,QQ,Email 等。
文章管理表(ArticleManagement):用于存放文章记录,包括数据项:资料名字,资料体裁,文章作者,创建时间,资料编号等。
信息类别表(InformationClass):用于存放初始的文章类别记录,包括数据项:类别名称。
财务表(Finance):用于存放财务记录,包括数据项:支出,收入,余额,编号。
银行表(Bank):用于存放银行信息记录,包括数据项:部门名称,部门编号,地址,汇率。
根据上面的设计规划出来的实体有用户实体,联系人实体,文章管理实体,银行实体,联系人类别实体,信息类别实体,财务实体。
用户实体的E-R图如下图所示:联系人实体的E-R图如下图所示:E-R图如下图所示:文章管理实体的财务管理实体的E-R图如下图所示联系人类别实体的E-R图如下图所示信息类别实体的E-R图如下图:所有实体之间的关系E-R图如下图所示:四数据库逻辑模型设计4.1 一般逻辑模型设计:关系模型的逻辑结构是一组关系模式的集合,将E-R图转换为关系模型就是要将实体型,实体的属性和实体型之间的联系转换为关系模式。
由ERD导出一般关系模型的四条原则:(1)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。
如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。
(2)一个1:n联系可以转换为一个独立的关系模式,也可以与n 端对应的关系模式合并。
如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。
(3)一个m:n联系转换为一个关系模式。
与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。
(4)3个或3个以上实体间的一个多元联系可以转换为一个关系模式。
与该多元联系项连接的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。
根据以上原则将E-R图转换成的关系模式如下:用户(身份证号,用户账号,密码,真实姓名,性别,联系地址,联系电话,出生年月)联系人(姓名,性别,联系电话,传真,出生年月,联系地址,QQ,Email,类别名称,身份证号)文章管理(资料名字,资料体裁,文章作者,创建时间,资料编号,身份证号)银行(部门名称,部门编号,地址,汇率,编号)财务(编号,支出,收入,余额,身份证号)联系人类别(类别名称)信息类别(类别名称)包含(embody)(资料编号,类别名称)4.2 具体逻辑模型设计:在SQL Server2000数据库中,首先创建management数据库,然后根据数据库的逻辑结构分析创建表5.1-5.8的8张数据表。
在前台访问数据库阶段设置了用户和密码,用户为admin,密码为1。
表5.1 Users用户信息表结构表5.2 Personcontact联系人信息表结构表5.3 Bank银行管理信息表结构表5.4 Account银行管理信息表结构表5.5 Articlemanagement文章管理信息表结构表5.6 Finance财务信息表结构表5.7 Contactclass联系人类别信息表结构表5.8 Informationclass信息类别信息表结构表5.9 Embody包含联系信息表结构五数据库物理设计与数据库保护设计5.1 设计表间关系5.2 物理设计数据库物理设计阶段的任务是根据具体计算机系统的特点,为给定的数据库模型确定合理的存储结构和存取方法。
所谓的合理主要有两个含义:一个是要使设计出的物理数据库占用较少的存储空间,另一个对数据库的操作具有尽可能高的速度,这里,我们只讨论后者.要想对数据库的操作有尽可能高的速度,我们可以通过建立索引来实现:(1)对Users表在Uidnumber属性列上建立聚集索引。