1、学号数据库系统概论课程设计汇报题目:个人信息管理系统专业:网络工程班级:姓名:指导老师:成绩:计算机学院12月8日目录一 课程设计目标和意义21.1课程设计目标21.2 课程设计意义3二 需求分析42.1 用户需求42.2 系统需要实现功效和操作以下52.3 功效需求分析:6三 数据库概念模型设计8四 数据库逻辑模型设计134.1 通常逻辑模型设计:134.2 具体逻辑模型设计:14五 数据库物理设计和数据库保护设计185.1 设计表间关系185.2 物理设计195.3 保护设计19六 数据库建立20七 课程设计心得和体会25八 参考资料26一 课程设计目标和意义1.1课程设计目标数据库课程设
2、计是数据库系统原理实践步骤极为关键部分,其目标是:(1) 培养学生能够应用数据库系统原理在需求分析基础上对系统进行概念设计,学会设计局部ER图,全局ER图;(2) 培养学生能够应用数据库系统在概念设计基础上应用关系规范化理论对系统进行逻辑设计,学会在ER图基础上设计出易于查询和操作合理规范化关系模型;(3) 培养学生能够应用SQL语言对所设计规范化关系模型进行物理设计,而且能够应用事务处理,存放过程,触发器以确保数据库系统数据完整性,安全性,一致性,确保数据共享和预防数据冲突;(4) 培养学生理论和实际相结合能力,使之能够熟练掌握一个数据库系统(如SQL SERVER)使用,培养学生开发创新能
3、力;(5) 经过设计实际数据库系统应用课题,使学生深入熟悉数据库管理系统操作技术,提升学生独立分析问题,处理问题,查阅资料和自学能力,以适应计算机产业日新月异发展形势;提升和加强学生计算机应用和软件开发能力,使学生有初学者向专业程序员过渡1.2 课程设计意义现在,中国在计算机应用,计算机软件和电子类相关专业人才培养方面取得了长足发展,但同时也让我们深刻地感觉到缺乏实际开发设计项目标经验,不善于综合利用所学理论,对知识把握缺乏融会贯通能力,尤其是我们计算机专业大学生,因为缺乏具体项目经验,毕业以后普遍感到知识不能转化为能力。课程设计能够锻炼我们理论联络实际能力,为以后工作做铺垫。借于这次我们所选
4、课程题目,让我们有了一个很好动手操作机会。众所周知,在当今社会,大学生数量每十二个月全部是只增不减,对于学生而言,伴随个人学历和社会阅历日益渐增,我们天天或一段时间内需要处理事情也逐步增多,其中有很多事情对于以后一段时间生活有很大关联。比如,我们认识了很多新好友,怎样把她们联络方法有效安全保留下来,或把我们近期消费数目统计下来,又或有部分事情对于自己近期生活有很大关联,怎样把它们行之有效保留下来,而且能够立即通知自己,这全部是我们想迫切处理问题。本课程设计就是要专门处理这些问题,因为这个项目只是以小组形式设计,有很多问题我们可能还没有想到或接触到。所以本设计和开发也仅是一个尝试性工作,但其中有
5、很多关键思想和方法,包含部分关键程序代码,对于研究开发该类程序工程人员能够起到一个抛砖引玉作用。二 需求分析2.1 用户需求本系统就是一个面向广大在校大中专院校学生个人信息管理系统,当然了,对于那些已经参与工作或已经毕业好友一样适用。此系统是一个比较经济耐用管理系统,它面向全部在校学生,但含有比较高安全性能。它能够实现信息管理基础功效,包含新信息录入,查询,信息删除等操作和后台数据库备份和恢复。用户正当注册后必需输入用户账户和密码才能成功进入该系统,以此确保了信息安全性和个人隐私,进入该系统后能够依据自己想法进入对应功效模块,进行信息查看,录入,更新等基础操作。对于非法操作,系统有识别和防护方
6、法。个人信息管理特点是能够存放信息比较多,所管理信息种类繁多,为了给用户一个很好使用平台,内部使用设计以菜单或按钮形式给出。对于查询和更新方法设置了一个统一标准,所以在使用和管理起来很方便。本系统在设计过程中,为了克服部分困难,需要使程序代码标准化,软件统一化,确保软件可维护性和使用性,删除无须要管理冗余,实现管理规范化,科学化。界面友好,简单化,做到实用,方便,尽可能满足广大使用者需求。2.2 系统需要实现功效和操作以下: (1) 登录功效:登录系统为身份验证登陆,用户输入用户账户和密码后才能进入该系统,若输入有误,系统会给出警告,三次错误后,需等候半个小时后才能再次输入,以此确保了系统安全
7、性。 (2) 更新信息功效:用户进入系统后,找到对应所属功效模块,然后依据自己需要,能够删除部分已经对自己没有任何用处信息,或重新输入自己要保留信息。 (3) 查询功效:用户进入系统后,找到对应所属功效模块,然后依据内容输入或依据关键字进行查询,查询出信息会显示在界面上,而且能够预览和打印出结果。 (4) 系统维护功效:数据安全管理,关键是依靠管理员对数据库里信息进行备份和恢复,数据备份后,假如出了什么意外能够恢复数据库到当初备份状态,这提升了系统和数据安全性,有利于系统维护; 进行以上功效操作处理时,可依据下述功效分析中关键结构功效模块图进行。2.3 功效需求分析: 本系统关键结构功效图以下
8、: 三 数据库概念模型设计 基础项构思ERD四项基础标准:(1) 标准1(确定实体):能独立存在事物,比如人,物,事,地,团体,机构等,在其有多个由基础项描述特征需要关注时,就应把它作为实体。(2) 标准2(确定联络):两个或多个实体间关联和结合,如主管,隶属,组成,占有,包含,配合等等,当需要给予关注时,应作为联络。实体间联络可划分为一对一,一对多,多对多等三类,在确定联络时还要确定其类型。(3) 标准3(确定属性):实体属性是实体本质特征。实体应有标志属性(能把不一样个体区分开来属性组),并指定其中一个作为主标识,联络属性是联络结果或状态。(4) 标准4(一事一地):信息分析中得到基础项要
9、在且仅在实体联络图中一个地方作为属性出现。经过上述系统功效分析和需求总结,设计以下面所表示数据项和数据结构。用户表(Users):用于存放注册用户统计,包含数据项:用户账户,密码,真实姓名,身份证号,联络电话,联络地址,性别,出生年月等。联络人类别表(ContactClass):用于存放初始联络人类别统计,包含数据项:类别名称。联络人表(Personcontact):用于存放联络人统计,包含数据项:姓名,性别,联络电话,传真,出生年月,联络地址,QQ,Email等。文章管理表(ArticleManagement):用于存放文章统计,包含数据项:资料名字,资料体裁,文章作者,创建时间,资料编号等
10、。信息类别表(InformationClass):用于存放初始文章类别统计,包含数据项:类别名称。财务表(Finance):用于存放财务统计,包含数据项:支出,收入,余额,编号。银行表(Bank):用于存放银行信息统计,包含数据项:部门名称,部门编号,地址,汇率。依据上面设计计划出来实体有用户实体,联络人实体,文章管理实体,银行实体,联络人类别实体,信息类别实体,财务实体。用户实体E-R图以下图所表示: 联络人实体E-R图以下图所表示: 文章管理实体E-R图以下图所表示: 账户和银行管理实体E-R图分别以下图所表示 财务管理实体E-R图以下图所表示联络人类别实体E-R图以下图所表示 信息类别实
11、体E-R图以下图: 全部实体之间关系E-R图以下图所表示: 四 数据库逻辑模型设计 4.1 通常逻辑模型设计: 关系模型逻辑结构是一组关系模式集合,将E-R图转换为关系模型就是要将实体型,实体属性和实体型之间联络转换为关系模式。由ERD导出通常关系模型四条标准:(1) 一个1:1联络能够转换为一个独立关系模式,也能够和任意一端对应关系模式合并。假如转换为一个独立关系模式,则和该联络相连各实体码和联络本身属性均转换为关系属性,每个实体码均是该关系候选码。假如和某一端实体对应关系模式合并,则需要在该关系模式属性中加入另一个关系模式码和联络本身属性。(2) 一个1:n联络能够转换为一个独立关系模式,
12、也能够和n端对应关系模式合并。假如转换为一个独立关系模式,则和该联络相连各实体码和联络本身属性均转换为关系属性,而关系码为n端实体码。(3) 一个m:n联络转换为一个关系模式。和该联络相连各实体码和联络本身属性均转换为关系属性,各实体码组成关系码或关系码一部分。(4) 3个或3个以上实体间一个多元联络能够转换为一个关系模式。和该多元联络项连接各实体码和联络本身属性均转换为关系属性,各实体码组成关系码或关系码一部分。依据以上标准将E-R图转换成关系模式以下:用户(身份证号,用户账号,密码,真实姓名,性别,联络地址,联络电话,出生年月)联络人(姓名,性别,联络电话,传真,出生年月,联络地址,QQ,
13、Email,类别名称,身份证号)文章管理(资料名字,资料体裁,文章作者,创建时间, 资料编号 ,身份证号)银行(部门名称,部门编号,地址,汇率,编号)财务(编号,支出,收入,余额,身份证号)联络人类别(类别名称)信息类别(类别名称)包含(embody)(资料编号,类别名称)4.2 具体逻辑模型设计: 在SQL Server数据库中,首先创建management数据库,然后依据数据库逻辑结构分析创建表5.1-5.8张数据表。在前台访问数据库阶段设置了用户和密码,用户为admin,密码为。表5.1 Users用户信息表结构表中列名数据类型可否为空说明Uidnumber(主码)Varchar2否身份
14、证号UrealnameVarchar2是真实姓名UcodeVarchar2否l密码UuseraccountVarchar2否用户账户UtelephoneVarchar2是联络电话UaddressVarchar2是联络地址UsexVarchar2是性别UbirthoftimeDate是出生年月表5.2 Personcontact联络人信息表结构表中列名数据类型可否为空说明Prealname(主码)Varchar2否姓名PsexVarchar2可性别PtelephoneVarchar2可联络电话PfaxVarchar2可传真PbirthoftimeDate可出生年月PaddressVarchar2
15、否联络地址Pqqnumber可QQPemailVarchar2可EmailCclassnameVarchar2否类别名称UidnumberVarchar2否身份证号表5.3 Bank银行管理信息表结构表中列名数据类型可否为空说明Bdepartmentnumber(主码)Varchar2否部门编号BdepartmentnameVarchar2否部门名称BaddressVarchar2可地址Bratenumber可汇率表5.4 Account银行管理信息表结构表中列名数据类型可否为空说明Accountnumber(主码)Varchar2否部门编号DpartmentnumberVarchar2否部门
16、名称表5.5 Articlemanagement文章管理信息表结构表中列名数据类型可否为空说明AinformationnameVarcha2r可资料名字AinformationtypeVarchar2可资料体裁AarticlenameVarchar2可文章作者AbuildtimeDate否创建时间Ainformationnumber(主码)Varchar2否资料编号UidnumberVarchar2否身份证号表5.6 Finance财务信息表结构表中列名数据类型可否为空说明Fnumber(主码)Varchar2否编号Foutputnumber可支出Finputnumber可收入Fbalance
17、number可余额UidnumberVarchar2否身份证号表5.7 Contactclass联络人类别信息表结构表中列名数据类型可否为空说明Cclassname(主码)Varchar2否类别名称表5.8 Informationclass信息类别信息表结构表中列名数据类型可否为空说明Iclassname(主码)Varchar2否类别名称表5.9 Embody包含联络信息表结构表中列名数据类型可否为空说明Iclassname(主码)Varchar2否类别名称Ainformationnumber(主码)Varchar2否资料编号五 数据库物理设计和数据库保护设计5.1 设计表间关系5.2 物理设
18、计 数据库物理设计阶段任务是依据具体计算机系统特点,为给定数据库模型确定合理存放结构和存取方法。所谓合理关键有两个含义:一个是要使设计出物理数据库占用较少存放空间,另一个对数据库操作含有尽可能高速度,这里,我们只讨论后者. 要想对数据库操作有尽可能高速度,我们能够经过建立索引来实现:(1) 对Users表在Uidnumber属性列上建立聚集索引。(2) 对Personcontact表在Prealname属性列上建立聚集索引。(3) 对Bank表在Bdepartmentnumber属性列上建立聚集索引。(4) 对Articlemanagement表在Ainformationnumber属性列上建
19、立聚集索引。(5) 对Finance表在Fnumber属性列上建立聚集索引。(6) 对Contactclass表在Classname属性列上建立聚集索引。(7) 对Informationclass表在Iclassname属性列上建立聚集索引。(8) 对Embody表在Ainformationnumber属性列上建立聚集索引,在Iclassname属性列上建立非聚集索引。5.3 保护设计 除非用户本人授权她人使用自己应用系统,不然她人无法登陆使用。对于登录系统,本设计采取用户识别和判别检测机制,即:用户进入系统时必需首先输入用户账户和密码,然后等候系统对其进行识别,经过识别成功后才能进入系统进行
20、多种操作。因为本系统内部信息很关键,当用户删除信息时,系统会给出提醒,谨防用户因操作失误而造成不可挽回后果。六 数据库建立(1) 创建数据库 USE master GoCREATE DATABASE manageON(NAME=manage,FILENAME=d:manage.mdf,SIZE=10,MAXSIZE=50,FILEGROWTH=5) LOG ON (NAME=management,FILENAME=e:manage.ldf,SIZE=5MB,MAXSIZE=25MB,FILEGROWTH=5MB)(2) 用户表建立Create table Users( Uidnumber va
21、rchar2 (18) primary key, Urealname varchar2 (15) , Ucode varchar2 (12) not null, Uuseraccount varchar2 (15) not null, Utelephone varchar2 (11), Uaddress varchar2 (25), Usex varchar2(2) , Ubirthoftime date); (3) 联络人表建立Create table Personcontact( Prealname varchar2 (15) primary key, Psex varchar2(2) ,
22、 Ptelephone varchar2 (11), Pfax varchar2 (20), Pbirthoftime date, Paddress varchar2 (25) not null, Pqq number, Pemail varchar2 (20), Cclassname varchar2 (15) not null, Uidnumber varchar2(18) not null, Foreign key (Cclassname) references Contactclass (Cclassname), Foreign key (uidnumber) references u
23、sers (uidnumber) ) (4) 银行表建立 Create table Bank( Bdepartmentnumber varchar2 (15) primary key, Bdepartmentname varchar2 (20) not null, Baddress varchar2 (20), Brate number, Fnumber varchar2 (15) not null, Foreign key (fnumber) references finance (fnumber), ) (5) 文章管理表建立 Create table Articlemanagement
24、( Ainformationname varchar2 (15), Ainformationtype varchar2 (15), Aarticlename varchar2 (15) not null, Abuildtime date not null, Ainformationnumber varchar2 (10) primary key, Uidnumber varchar2 (18) not null, Foreign key (uidnumber) references users (uidnumber),) (6) 财务表建立 Create table Finance ( Fnu
25、mber varchar2 (10) primary key, Foutput number, Finput number, Fbalance number, Uidnumber varchar2 (18) not null, Foreign key (uidnumber) references users (uidnumber),) (7) 联络人类别表建立 Create table Contactclass ( Cclassname varchar2 (15) primary key) (8) 信息类别表建立 Create table Informationclass ( Iclassna
26、me varchar2 (15) primary key) (9) 包含表建立 Create table Embody ( Iclassname varchar2 (15), Ainformationnumber varchar2 (10), primary key (Iclassname, Ainformationnumber), Foreign key (iclassname) references informationclasss (iclassname), Foreign key (Ainformationnumber) references articlemanagement (A
27、informationnumber),) (10) 索引创建 Create index users_uid on users (uidnumber) Create index personcontact_pre on personcontact (prealname) Create index bank_bde on bank (bdepartmentnumber) Create index articlemanagement_ain on articlemanagement (ainformationnumber) Create index finance_fnu on finance (f
28、number) Create index contactclass_cla on contactclass (classname) Create index informationclass_icl on informationclass (iclassname) Create index embody on embody (ainformationnumber)七 课程设计心得和体会 1、对自己设计进行评价,指出不合理和不足之处,提出改善方案。此次设计总体来说设计比较简单,考虑不过细致,有些地方没有考虑。也有些地方是做比较满意,有可圈点地方。 首先,比如我们给个人软件系统嵌入了比较多功效,能
29、过满足用户日常需要,而且其功效使用相对简单,不会给用户带来使用时困扰。不过,我们还是有不足地方,如功效优化简练,这一点我们因为知识不够充足,所以功效优化方面有所欠缺。 其次,在数据库设计中,多个表之间联络比较复杂,给建表带来了困难,不过我们会仔细地设计每一个步骤,尽力使数据库完善。 合理之处有:我们所设计个人信息管理系统,整体设计比较清楚,分为若干个模块,不仅便于设计功效,而且用户用起来也会对整个软件有个清楚地感觉,不会在用起来感到吃力。2、在学习过程中感受:在此次课程设计中,有些知识没有掌握,所以数据库方面设计没有做好,不过因为对数据库使用不太了解,所以花了部分时间,经过努力还是逐步了解数据库,学会了部分以前没有掌握东西,这算是一个收获吧。其次是感觉,知识掌握不够牢靠,掌握知识不够全方面,查了很多资料才勉强做出来,看来基础知识是很关键。还有团体合作是很关键,即使自己个人掌握一些知识,不过还是要和组员通力合作,自己独自是做不好,再者组员之间合作过程中能够相互学习,这么更能使知识掌握愈加牢靠。八 参考资料软件工程导论(第五版) 张海藩 编著;数据库原理教程 范明,叶阳东等编著,科学出版社;