数据库课程设计报告报告_第1页
数据库课程设计报告报告_第2页
数据库课程设计报告报告_第3页
数据库课程设计报告报告_第4页
数据库课程设计报告报告_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、数据库课程设计教学治理系统评价标准分数比例(%成绩论文论文结构包含:相关技术介绍、需求分析、概念结构设计、逻辑结构设计、数据库物理设计、数据库实施、系统测试方案和测试报告、系统的主要功能和使用说明、系统安装说明.要求论文完整、内容详细,格式标准.40程序系统运行正确;功能完善:有增、删、改、查功能,有根本的报表、查询、统计和输入、输出功能;工作量充分;系统实现技术的难度.30数据库设计E-R图设计正确;数据库逻辑结构设计标准化;数据库物理设计合理.30总评成绩优口良口中|口及格口不及格总分前言.4前言.4相关技术介绍.4第一章需求分析.41.1 任务才述51.1.1 目标.51.1.2 运行环

2、境.51.2 数据流图.51.3 数据字典.61.4 系统流程分析.6第二章概念结构设计.7第三章逻辑结构设计.83.1 逻辑结构设计.83.2 标准化处理.10第四章数据库物理设计.114.1 索引表.104.2 系统配置.114.3 视图.11第五章数据库白实施.115.1 创立数据库及数据库对象.115.2 完整性约束创立.135.3 数据库的维护及备份.145.3.1 维护.145.3.2 检测并改善数据库性能.145.3.3 备份.14第六章前台用户界面.14第七章结论与体会.17参考文献0、前言0.1引言数据库作为存取数据并对数据进行操作的工具在系统中所起到的作用至关重要.数据库设

3、计是指对于一个给定的应用环境,构造优化的数据库逻辑模式和物理模式结果,并据此建立数据库及其应用系统,使之能有效地存储和治理数据,满足应用需求,包括信息治理要求和数据操作.信息治理要求是指在数据库中应该存储和治理哪些数据对象;数据操作要求是指对数据对象进行哪些操作,如查询、增、删、改、统计等操作.数据库设计地目标是维用户和各种应用系统提供的一个信息根底设施和高效率地运行环境.高效率的运行环境包括:数据库数据的存取速率、数据库存储空间的利用率、数据库系统运行治理的效率等都是高的.为了使数据库的应用系统开发设计合理、标准、有序、正确、高效进行,现在广泛采用的是工程化6阶段开发设计过程与方法,它们是需

4、求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施、数据库系统运行与维护阶段.我根据以上几点开发了学生选课治理系统数据库.0.2相关技术介绍0.2.1MYSQL概述MySQ是一个关系型数据库治理系统,由瑞典MySQIAB公司开发,目前属于Oracle旗下产品.MySQLR流行的关系型数据库治理系统,在WEB应用方面MySQ比最好的RDBMSRelationalDatabaseManagementSystem,关系数据库治理系统应用软件之MySQI一种关联数据库治理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提升了灵活性.

5、MySQ所使用的SQL语言是用于访问数据库的最常用标准化语言.MySQK件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有本钱低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库.0.2.2VisualStudio概述MicrosoftVisualStudio简称VS是美国微软公司的开发工具包系列产品.VS是一个根本完整的开发工具集,它包括了整个软件生命周期中所需要的大局部工具,如UMLX具、代码管控工具、集成开发环境IDE等等.所写的目标代码适用于微软支持的所有平台,包括MicrosoftWindowsWindowsMobile、Windows

6、CE.NETFramework、.NETCompactFramework和MicrosoftSilverlight及WindowsPhone1、需求分析1.1 任务概述1.1.1 目标建立一个教学治理系统,系统通过数据库存储学校学生、教职工、系、课程以及成绩等资料,系统治理员可通过用户名与密码进入数据库,并根据给予的权限对数据库的数据进行查询或修改.删除的数据要留底.对数据库进行操作级审计.1.1.2 运行环境1、硬件配置安装本软件之前,需要保证计算机具有如下配置,这也是最低硬件要求:使用1G内存不小于40MB的可用硬盘空间(2)、软件配置安装本软件之前,需要保证计算机已安装:Micorsof

7、tWindowsXP及以上的操作系统.NETFramework3.5以上1.2 数据流图图1顶级数据流图治理员用户名密码治理员信息1.3数据字典数据元素数据类型数据长度数据组成数据来源描述学号Varchar1010数字10学生信息表成绩表唯一标示学生的号码职工号Varchar88数字8职工信息表口口工姓名Varchar101汉字10学生信息表职工信息表人员姓名性别Varchar1男|女学生信息表职工信息表人员性别所在系号Int33数字3学生信息表职工信息表系号Int33数字3系信息表唯一标示一个系的编号系名称Varchar201汉字20系信息表课程号Int44数字4课程信息表成绩表唯一标示一个

8、课程的编号课程名称Varchar201汉字20课程信息表任课老师Varchar88数字8课程信息表这节课的负责教师测试成绩Int31数字3成绩表1.4系统流程分析前面的分析中我们确定了系统各个功能模块,属于静态建模的范围.在系统运行时刻的动态模型应该由系统流程决定.从上面的功能描述中,我们可以把各个系统分为5登录界面专业整理分享个模块:用户验证,师生信息治理,课程信息治理,成绩治理和信息查询.在每个模块下又提供更为具体的功能.详细的系统模块关系图如图3所示.图3、程序流程图通过对整个治理系统的功能分析,可以定义出系统的功能模块图,从中再细分各模块,可以得到系统概要模块如下:图4、功能模块图2数

9、据库概念结构设计采用E-R图的分析方法,首先对局部视图进行分析设计,然后再实现视图集成.在图5、实体E-R图3数据库逻辑结构设计根据E-R图,我们可以创立以下数据表.系统治理员表系统治理员admin存储了登录本系统的用户的登录ID和密码,权限以及盐值表1、系统治理员表字段名称数据类型可含为空约束条件说明ADMIN_USERVarchar(50)NOTNULL主键治理员IDADMIN_PSWDVarchar(256)NOTNULL无治理员密码哈希值ADMIN_PERMVarchaK1)NOTNULL无治理员权限SaltVarchar(10)NOTNULL无1治理员密码盐值学生信息表学生信息表st

10、udent存放了学校的所有学生的根本信息,所有有关学生的操作都与这个表有关.通过时间戳自动生成入学时间.信息从表中删除时参加历史表留底.表2、学生信息表字段名称数据类型可含为空约束条件说明SnoVarchar(50)NOTNULL主键学生学号SnameVarchar(50)NOTNULL无学生姓名SsexVarchar(1)NOTNULL无学生性别S_DnoVarchar(50)NOTNULL外键学生所在系号SindateDatetimeNOTNULL时间戳形成学生入学时间教师信息表教师信息表(teacher)存放了学校的所有教师的根本信息,所有有关教师的操作都与这个表有关.通过时间戳自动生成

11、入职时间.信息从表中删除时参加历史表留底.表3、教师信息表字段名称数据类型可含为空约束条件说明TnoVarchar(50)NOTNULL主键教师,号TnameVarchar(50)NOTNULL无教师姓名TsexVarchar(1)NOTNULL无教师性别T_DnoVarchar(50)NOTNULL外键教师所在系号TindateDatetimeNOTNULL时间戳形成教师入职时间系信息表系信息表(department)存放了学校的所有系的根本信息,并且与学生表以及教师表有紧密联系表4、系信息表字段名称数据类型可含为空约束条件说明DnoVarchar(50)NOTNULL主键系号DnameVa

12、rchar(50)NOTNULL无系名称DsummaryTextNULL无系简介课程信息表课程信息表(course)记录了学校中所有课程的信息表5、课程信息表字段名称数据类型可含为空约束条件说明CnoVarchar(50)NOTNULL主键课程号CnameVarchar(50)NOTNULL无课程名称C_TnoVarchar(50)NOTNULL外键任课老师工号成绩信息表成绩表sc记录了某个学生在某们课程得到的成绩表6、成绩表字段名称数据类型可含为空约束条件说明SnoVarchar(50)NOTNULL主键、外键学生学号CnoVarchar(50)NOTNULL主键、外键课程名称GradeIn

13、tNULL无当科成绩历史表历史表history记录了离校学生或离职教师的信息,通过触发器自动生成,尽量预防手动添加.作为留底超过一定数量应给予整理表7、历史表字段名称数据类型可含为空约束条件说明HnoVarchar(50)NOTNULL主键曾用标示号hnameVarchar(50)NOTNULL无姓名hSexVarchar(1)NOTNULL无性别hdepartmentVarchar(50)NOTNULL无曾在系名hindateDatetimeNOTNULL无入学日期houtdateDatetimeNOTNULL时间戳形成离校日期审计表审计表Accesslog记录了除治理员外的数据库用户对数据

14、库的使用情况,处于平安性考虑,用独立的数据库进行保存,并且只赋予治理员权限进行查看.只可通过系统进行数据添加,严禁手工操作数据!表8、审计表字段名称数据类型可含为空约束条件说明IdVarchar(50)NOTNULL主键、自增标小方timetimestampNOTNULL时间戳形成操作时间loaclnameVarchar(50)NOTNULL无操作帐号matchnameVarchar(50)NOTNULL无对应用户3.2标准化处理经过对初始关系模式的标准化处理以下关系模式中不存在局部函数依赖和传递函数依赖,已经到达3NE(加粗代表主码,斜体外码)Admin(ADMIN_USERDMIN_PSW

15、D,ADMIN_PERMIT)Student(SnqSname,Ssex,S_Dno,Sindate)Teacher(Tno,Tname,Tsex,T_Dno,Tindate)Department(DnoDname,Dsummary)Course(CnoCname,C_Tn.SC(Sno,CnqGrade)4物理结构设计数据库在物理上的存储结构与存储方法称为数据库的物理结构,它依赖于选定的数据库治理系统.为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是物理结构设计.数据库的物理结构设计通常分为两步:(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;(2)对

16、物理结构进行评价,评价的中的是时间和空间效率.4.1 创立数据库及建立索引以及完整性约束使用工具NavicatforSQL,创立了school数据库及Accesslog数据库并生成相关数据库模型,图如下histaryJE-kum*:.二二建立各数据库间的索引关系.4.2 系统配置在mysql配置文件my.ini中的mysqld设置项中写入如下配置:init-connect=insertintoaccesslog.accesslogvalues(connection_id(),now(),user(),current_user();当非超级治理员连接数据库时自动向审计表中写入审计记录仓I建受限用

17、户a,只允许其对school数据库中student,teacher,course,sc.department表进行增删改查操作,拒绝其他权限.4.3 视图用SQL治理工具建立常用的一个视图,即学生成绩视图.菜单栏中单击工具一向导一数据库一创立视图向导,选择你所要建的试图的对象,选择列名,根据提示,最后单击完成即可.使用SQL语句建立视图的命令如下:createviewstudent_scasselectsno,o,cnamegradefromstudentjoinsconstudent.sno=sc.snoo=o5数据库实施5.1 创立数据库及数据库对象*CREATEDATABASEschoo

18、l;USEschool;CREATETABLEAdmin(ADMIN_USERVARCHAR(50)NOTNULL,ADMIN_PSWDVARCHAR(50)NOTNULL,ADMIN_PERMITVARCHAR(50)NOTNULL,SaltVARCHAR(10)NOTNULL,PRIMARYKEY(ADMIN_USER);CREATETABLEStudent(SnoVARCHAR(50)NOTNULL,SnameVARCHAR(50)NOTNULL,SsexVARCHAR(1)NOTNULL,S_DnoVARCHAR(50)NOTNULL,SindateDATETIMENOTNULL,PR

19、IMARYKEY(Sno);CREATETABLETeacher(TnoVARCHAR(50)NOTNULL,TnameVARCHAR(50)NOTNULL,TsexVARCHAR(1)NOTNULL,T_DnoVARCHAR(50)NOTNULL,TindateDATETIMENOTNULL,PRIMARYKEY(Tno);CREATETABLEDepartment(DnoVARCHAR(50)NOTNULL,DnameVARCHAR(50)NOTNULL,DsummaryTEXT,PRIMARYKEY(Dno);CREATETABLECourse(CnoVARCHAR(50)NOTNULL

20、,CnameVARCHAR(50)NOTNULL,C_TnoVARCHAR(50)NOTNULL,PRIMARYKEY(Cno);CREATETABLESC(SnoVARCHAR(50)NOTNULL,CnoVARCHAR(50)NOTNULL,GradeINT,PRIMARYKEY(Sno,Cno);CREATETABLEHISTORY(HNOVARCHAR(50)NOTNULL,HNAMEVARCHAR(50)NOTNULL,HSEXVARCHAR(50)NOTNULL,HDEPARTMENTVARCHAR(50)NOTNULL,HINDATEDATETIMENOTNULL,HOUTDAT

21、EDATETIMENOTNULL,PRIMARYKEY(HNO);CREATEDATABASEAccesslpgUseAccesslong;CREATETABLEAccesslong(IDINT,TIMETIMESTAMP,LOCALNAMEVARCHAR(50),MATCHNAMEVARCHAR(50),PRIMARYKEY(ID);*5.2 完整性约束*useschool;altertablestudentaddconstraintFK_ID0foreignkey(S_Dno)REFERENCESdepartment(Dno);altertableteacheraddconstraintF

22、K_ID1foreignkey(T_Dno)REFERENCESdepartment(Dno);altertablecourseaddconstraintFK_ID2foreignkey(C_Tno)REFERENCESteacher(Tno);altertablescaddconstraintFK_ID3foreignkey(Sno)REFERENCEtUdent(Sno);altertablescaddconstraintFK_ID4foreignkey(Cno)REFERENCEScourse(Cno);*CREATEDEFINER=rootlocalhostTRIGGERindateB

23、EFOREINSERTONstudentFOREACHROWsetnew.sindate=current_date;CREATE)EFINER=rootlocalhostTRIGGERolddataBEFORBELETEDNstudentFOREACHROWbegininsertintohistory(hno,hname,hsex,hindate,houtdate)values(old.sno,old.sname,old.ssex,old.sindate,current_date);updatehistoryh,departmentpseth.hdepartment=p.dnamewherep

24、.dno=old.s_dno;end;*5.3 数据库的维护在数据库运行阶段,对数据库经常性的维护工作主要是有DBA完成,它包括:1 .数据库的转储和恢复2 .数据库的平安性和完整性限制3 .数据库性能的监督、分析和改造4 .数据库的重组织与重构造5.3.1 维护数据库既是共享的资源,又要进行适当的保密.DBA、须对数据库平安性和完整性限制负起责任.尤其在计算机网络普遍引应用的今天,保证数据平安、预防黑客攻击、预防病毒入侵等,都是DBA所需要面对的.根据设计阶段提供的平安防范和故障恢复规范,DBAS经常检查系统的平安是否受到侵犯,根据用户的实际需要授予用户不同的操作权限.数据库在运行过程中,由

25、于应用环境发生变化,对平安性的要求可能发生变化,DBAS根据实际情况及时调整相应的授权和密码,以保证数据库的平安性.同样数据库的完整性约束条件也可能会随应用环境的改变而改变,这时DB岫要对其进行调整,以满足用户的要求.5.3.2 检测并改善数据库性能目前许多DBMS品都提供了检测系统性能参数的工具,DBAM以利用系统提供的这些工具,经常对数据库的存储空间及响应时间进行分析评价;结合用户的反映情况确定改良举措;及时改正运行中发现的错误;按用户的要求对数据库的现有功能进行适当的扩充.但要注意在增加新功能时应保证原有功能和性能不受损害.5.3.3 重新组织和构造数据库数据库建立后,除了数据本身是动态

26、变化外,随着应用环境的变化,数据库本身也必须变化以适应应用要求.数据库运行一段时间后,由于记录在不断增加、删除和修改,会改变数据库的物理存储结构,使数据库的物理特性受到破坏,从而降低数据库存储空间的利用率和数据的存取效率,使数据库的性能下降.因此,需要对数据库进行重新组织,即重新安排数据的存储位置,回收垃圾,减少指针链,改良数据库的响应时间和空间利用率,提升系统性能.这与操作系统对“磁盘碎片的处理的概念相似.数据库的重组只是使数据库的物理存储结构发生变化,而数据库的逻辑结构不变,所以根据数据库的三级模式,可以知道数据库重组对系统功能没有影响,只是为了提升系统的性能.由此可知,数据库的重组并不会

27、改变原设计的数据逻辑结构和物理结构,而数据库的重构造那么不同,它局部修改原数据库的模式或内模式,这主要是由于数据库的应用环境发生了变化,如需求变化、设计调整等.例如增加新的数据项、改变数据类型、改变数据库的容量、增加或删除索引、修改完整性约束等.DBMSJ殳都提供了重新组织和构造数据库的应用程序,以帮助DBAI成数据库的重组和重构工作.只要数据库系统在运行,就需要不断地进行修改、调整和维护.一旦应用变化太大,数据库重新组织和构造也无济于事,这就说明数据库应用系统的生命周期结束,应该建立新系统,重新设计数据库.从头开始数据库设计工作,标准着一个新的数据库应用系统生命周期的开始.6前台用户界面基于

28、C#8写了这个教务治理系统,并以完成了所以要求功能.数据库连接字符串:publicstaticstringConn=Database=school;DataSource=localhost;UserId=a;Password=a;charset=utf8;pooling=true;数据库连接代码MySqlConnectionconn=newMySqlConnection(connectionString)用户登录界面登录实现核心代码stringsql=string.Format(select*fromadminwhereADMIN_USER=0,textBox1.Text);MySql.Dat

29、a.MySqlClient.MySqlDataReaderreader;reader=MySqlHelper.ExecuteReader(MySqlHelper.Conn,CommandType.Text,sql,null);if(reader.HasRows)reader.Read();stringsalt=readersalt.ToString();if(readerADMIN_PSWD.ToString()=SHA256_Hash(textBox2.Text+salt)MessageBox.Show(登录成功);=readerADMIN_USER.ToString();global.permit=int.Parse(readerADMIN_PERMIT.ToString();this.DialogResult=DialogResult.OK;this.Close();elseMessageBox.Show(密码错误);)else(帐号不存在)MessageBox.Show()功能选择界面人员信息治理界面叱人员信息查询I学生信息教师信可匚写信息SnaSnenieSsexS_DnoSmdate3114口06小米W0042021/12/2

温馨提示

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

评论

0/150

提交评论