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

下载本文档

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

文档简介

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

2、结构设计7第三章逻辑结构设计8逻辑结构设计8规范化处理10第四章数据库物理设计11索引表10系统配置11视图11第五章数据库的实施11创建数据库及数据库对象11完整性约束创建伯数据库的维护及备份.14维护14检测并改善数据库性能14备份14第六章前台用户界面14第七章结论与体会17参考文献0、刖言引言数据库作为存取数据并对数据进行操作的工具在系统中所起到的作用至关重要。数据库设计是指对于一个给定的应用环境,构造优化的数据库逻辑模式和物理模式结果, 并据此建立数据库及其应用系统,使之能有效地存储和管理数据,满足应用需求,包括 信息管理要求和数据操作。信息管理要求是指在数据库中应该存储和管理哪些数

3、据对 象;数据操作要求是指对数据对象进行哪些操作,如查询、增、删、改、统计等操作。 数据库设计地目标是维用户和各种应用系统提供的一个信息基础设施和高效率地运行 环境。高效率的运行环境包括:数据库数据的存取速率、数据库存储空间的利用率、数 据库系统运行管理的效率等都是高的。为了使数据库的应用系统开发设计合理、规范、有序、正确、高效进行,现在广泛 采用的是工程化6阶段开发设计过程与方法,它们是需求分析阶段、概念结构设计阶段、 逻辑结构设计阶段、物理结构设计阶段、数据库实施、数据库系统运行与维护阶段。我 按照以上几点开发了学生选课管理系统数据库。相关技术介绍概述MySQ是一个关系型数据库管理系统,由

4、瑞典MySQIAB公司开发,目前属于Oracle 旗下产品。MySQL最流行的关系型数据库管理系统,在 WEB应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统)应用软件之。MySQ是 一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是 将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQ所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQ以件采用 了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤 其是开放源码这一特点,一般中小型网站的开发都

5、选择MySQL作为网站数据库。Studio概述Microsoft Visual Studio (简称VS)是美国微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如 UMLT具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的 所有平台,包括 Microsoft Windows WindowsMobile、WindowsCE .NET Framework、.NET Compact Framework和 Microsoft Silverlight 及 Windows Phona1、需求分析任务概述目标建立一个教学管

6、理系统,系统通过数据库存储学校学生、教职工、系、课程以及成绩等资料,系统管理员可通过用户名与密码进入数据库,并根据给予的权限对数据库的数据进行查询或修改。删除的数据要留底。对数据库进行操作级审计。运行环境(1)、硬件配置安装本软件之前,需要确保计算机具有如下配置,这也是最低硬件要求:使用1G内存不小于40MB的可用硬盘空间(2)、软件配置安装本软件之前,需要确保计算机已安装:MicorsoftWindows XP及以上的操作系统.NET Framework以上图1顶级数据流图系号Int33数字3系信息表唯一标示一个系的编号系名称Varchar201汉字20系信息表课程号Int44数字4课程信息

7、表成绩表唯一标示一个课程的编号课程名称Varchar201汉字20课程信息表任课老师Varchar88数字8课程信息表这节课的负责教师考试成绩Int31数字3成绩表系统流程分析前面的分析中我们确定了系统各个功能模块,属于静态建模的范围。在系统运行时 刻的动态模型应该由系统流程决定。从上面的功能描述中,我们可以把各个系统分为 5 个模块:用户验证,师生信息管理,课程信息管理,成绩管理和信息查询。在每个模块图3、程序流程图通过对整个管理系统的功能分析,可以定义出系统的功能模块图,从中再细分各模块,可以得到系统概要模块如下:图4、功能模块图2数据库概念结构设计采用E-R图的分析方法,首先对局部视图进

8、行分析设计,然后再实现视图集成。在视图集成时,注意要尽量消除冲突和冗余。在这里直接给出视图集成后的E-R图,如图图5、实体E-R图3数据库逻辑结构设计根据E-R图,我们可以创建以下数据表。系统管理员表系统管理员(admin)存储了登录本系统的用户的登录ID和密码,权限以及盐值表1、系统管理员表字段名称数据类型可否为空约束条件说 明ADMIN_USERVarchar(50)NOT NULL主键管理员IDADMIN_PSWDVarchar (256)NOT NULL无管理员密码哈希值ADMIN_PERMTVarchar(1)NOT NULL无管理员权限SaltVarchar(10)NOT NULL

9、无管理员密码盐值学生信息表学生信息表(student )存放了学校的所有学生的基本信息,所有有关学生的操作 都与这个表有关。通过时间戳自动生成入学时间。信息从表中删除时加入历史表留底。表2、学生信息表字段名称数据类型可否为空约束条件说 明SnoVarchar(50)NOT NULL主键学生学号Sn ameVarchar (50)NOT NULL无学生姓名SsexVarchar (1)NOT NULL无学生性别S_D noVarchar(50)NOT NULL外键学生所在系号Si ndateDatetimeNOT NULL时间戳形成学生入学时间教师信息表教师信息表(teacher )存放了学校的

10、所有教师的基本信息,所有有关教师的操作 都与这个表有关。通过时间戳自动生成入职时间。信息从表中删除时加入历史表留底。表3、教师信息表字段名称数据类型可否为空约束条件说 明TnoVarchar (50)NOT NULL主键教师工号Tn ameVarchar (50)NOT NULL无教师姓名TsexVarchar (1)NOT NULL无教师性别T_DnoVarchar(50)NOT NULL外键教师所在系号Ti ndateDatetimeNOT NULL时间戳形成教师入职时间系信息表系信息表(department )存放了学校的所有系的基本信息,并且与学生表以及教师表有紧密联系表4、系信息表字

11、段名称数据类型可否为空约束条件说 明DnoVarchar(50)NOT NULL主键系号Dn ameVarchar(50)NOT NULL无系名称DsummaryTextNULL无系简介课程信息表课程信息表(course )记录了学校中所有课程的信息表5、课程信息表字段名称数据类型可否为空约束条件说 明CnoVarchar (50)NOT NULL主键课程号Cn ameVarchar (50)NOT NULL无课程名称C_TnoVarchar (50)NOT NULL外键任课老师工号成绩信息表成绩表(SC)记录了某个学生在某们课程得到的成绩表6、成绩表字段名称数据类型可否为空约束条件说 明Sn

12、oVarchar (50)NOT NULL主键、外键学生学号CnoVarchar (50)NOT NULL主键、外键课程名称GradeIntNULL 无当科成绩历史表历史表(history )记录了离校学生或离职教师的信息,通过触发器自动生成,尽量避免手动添加。作为留底超过一定数量应给予整理 表7、历史表字段名称数据类型可否为空约束条件说 明HnoVarchar (50)NOT NULL主键曾用标示号hn ameVarchar (50)NOT NULL无姓名hSexVarchar (1)NOT NULL无性别hdepartme ntVarchar (50)NOT NULL无曾在系名hin da

13、teDatetimeNOT NULL无入学日期houtdateDatetimeNOT NULL时间戳形成离校日期审计表审计表(Accesslog )记录了除管理员外的数据库用户对数据库的使用情况, 处于安全性考虑,用独立的数据库进行保存,并且只赋予管理员权限进行查看。只可通 过系统进行数据添加,严禁手工操作数据!表&审计表字段名称数据类型可否为空约束条件说 明IdVarchar (50)NOT NULL主键、自增标示号timetimestampNOT NULL时间戳形成操作时间loac In ameVarchar (50)NOT NULL无操作帐号match nameVarchar (

14、50)NOT NULL无对应用户规范化处理经过对初始关系模式的规范化处理以下关系模式中不存在部分函数依赖和传递函数依赖,已经达到3NF (加粗代表主码,斜体外码)Admi n( ADMIN_USEERDMIN_PSWD,ADMIN_PERMIT)Student( SnoSname,Ssex, S_Dno,Sindate)Teacher( Tno,Tname,Tsex, T_Dno,Tindate)Department( DnqDname,Dsummary)Course( CnqCn ame,C_T noSC(Sno CnoGrade)4物理结构设计数据库在物理上的存储结构与存储方法称为数据库的

15、物理结构,它依赖于选定的数据库管理系统。为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就 是物理结构设计。数据库的物理结构设计通常分为两步:(1) 确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;(2) 对物理结构进行评价,评价的中的是时间和空间效率。创建数据库及建立索引以及完整性约束使用工具Navicat for SQL, 创建了 school数据库及Accesslog数据库并生成相关数据库模型,图如下CnsCnazre-15建立各数据库间的索引关系。冒 KLIMEK, g 加坨哋 二C_Txc系统配置在mysql配置文件中的 mysqld设置项中写入如下配置

16、:init-connect='insert intovalues(co nn ectio n_id(), no w(),user(),curre nt_user();'当非超级管理员连接数据库时自动向审计表中写入审计记录。创建受限用户 a,只允许其对 school 数据库中 student ,teacher ,course ,sc,department 表进行增删改查操作,拒绝其他权限。视图用SQL管理工具建立常用的一个视图,即学生 成绩视图。菜单栏中单击工具一向导一数据库-创建视图向导,选择你所要建的试图的对象,选择列名,按照提示,最后单击完成即可。使用SQL语句建立视图的命

17、令如下:create view student_scasselect sno, sname, cname gradefrom student join sc on =join course on =5数据库实施创建数据库及数据库对象*CREATE DATABASE school;USE school;CREATE TABLE Admi n(ADMIN_USER VARCHAR(50) NOT NULL,ADMIN_PSWD VARCHAR(50) NOT NULL,ADMIN_PERMIT VARCHAR(50) NOT NULL,Salt VARCHAR(10) NOT NULL,PRIMA

18、RY KEY (ADMIN_USER);CREATE TABLE Stude nt(Sno VARCHAR(50) NOT NULL,Sn ame VARCHAR(50) NOT NULL,Ssex VARCHAR (1) NOT NULL,S_D no VARCHAR(50) NOT NULL,Si ndate DATETIME NOT NULL,PRIMARY KEY (Sno);CREATE TABLE Teacher(Tno VARCHAR (50) NOT NULL,Tn ame VARCHAR(50) NOT NULL,Tsex VARCHAR (1) NOT NULL,T_Dno

19、 VARCHAR(50) NOT NULL,Ti ndate DATETIME NOT NULL,PRIMARY KEY (Tno);CREATE TABLE Departme nt(Dno VARCHAR(50) NOT NULL,Dn ame VARCHAR(50) NOT NULL,Dsummary TEXT,PRIMARY KEY (Dno);CREATE TABLE Course(Cno VARCHAR(50) NOT NULL,Cn ame VARCHAR(50) NOT NULL,C_Tno VARCHAR(50) NOT NULL,PRIMARY KEY (Cn o);CREA

20、TE TABLE SC(Sno VARCHAR(50) NOT NULL,Cno VARCHAR(50) NOT NULL,Grade INT,PRIMARY KEY (Sn o,C no);CREATE TABLE HISTORY(HNO VARCHAR(50) NOT NULL,HNAME VARCHAR(50) NOT NULL,HSEX VARCHAR(50) NOT NULL,HDEPARTMENT VARCHAR(50) NOT NULL,HINDATE DATETIME NOT NULL,HOUTDATE DATETIME NOT NULL,PRIMARY KEY (HNO);C

21、REATE DATABASE AccesslogUse Accessl ong;CREATE TABLE Accesslo ng (ID INT,TIME TIMESTAMP,LOCALNAME VARCHAR(50),MATCHNAME VARCHAR(50),PRIMARY KEY (ID);*完整性约束*use school;alter table stude nt add con strai nt FK_ID0 foreig n key(S_D no) REFERENCESdepartme nt(D no);alter table teacher add con strai nt FK

22、_ID1 foreig n key(T_D no) REFERENCESdepartme nt(D no);alter table course add con strai nt FK_ID2 foreig n key(C_T no) REFERENCESteacher(T no);alter table sc add constraint FK_ID3 foreign key(Sno) REFERENCESbdent(Sno);alter table sc add con strai nt FK_ID4 foreig n key(C no) REFERENCES course(C no);*

23、CREATBDEFINER='root''localhost' TRIGGERi ndate' BEFORENSERTON'stude nt'FOR EACH ROW set = curre nt_date;CREATDEFINER='root''localhost' TRIGGERolddata' BEFORDELETEDN'stude nt'FOR EACH ROW begi nin sert into history(h no,h name,hsex,hi ndate,hout

24、date)values,”,curre nt_date);update history h,departme nt p set = where =;end;*数据库的维护在数据库运行阶段,对数据库经常性的维护工作主要是有DBA完成,它包括:1. 数据库的转储和恢复2. 数据库的安全性和完整性控制3. 数据库性能的监督、分析和改造4. 数据库的重组织与重构造维护数据库既是共享的资源,又要进行适当的保密。DBA必须对数据库安全性和完整性 控制负起责任。尤其在计算机网络普遍引应用的今天,保证数据安全、防止黑客攻击、 防止病毒入侵等,都是DBA所需要面对的。按照设计阶段提供的安全防范和故障恢复规 范,

25、DBA要经常检查系统的安全是否受到侵犯,根据用户的实际需要授予用户不同的操 作权限。数据库在运行过程中,由于应用环境发生变化,对安全性的要求可能发生变化, DBA要根据实际情况及时调整相应的授权和密码,以保证数据库的安全性。同样数据库 的完整性约束条件也可能会随应用环境的改变而改变,这时DBA也要对其进行调整,以满足用户的要求。检测并改善数据库性能目前许多DBM资品都提供了检测系统性能参数的工具,DBA可以利用系统提供的这 些工具,经常对数据库的存储空间及响应时间进行分析评价;结合用户的反映情况确定 改进措施;及时改正运行中发现的错误;按用户的要求对数据库的现有功能进行适当的 扩充。但要注意在

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

27、数据库的三级模式,可以 知道数据库重组对系统功能没有影响,只是为了提高系统的性能。由此可知,数据库的重组并不会改变原设计的数据逻辑结构和物理结构,而数据库的重 构造则不同,它部分修改原数据库的模式或内模式,这主要是因为数据库的应用环境发 生了变化,如需求变化、设计调整等。例如增加新的数据项、改变数据类型、改变数据 库的容量、增加或删除索引、修改完整性约束等。DBMS-般都提供了重新组织和构造数据库的应用程序, 以帮助DBA完成数据库的重组和 重构工作。只要数据库系统在运行,就需要不断地进行修改、调整和维护。一旦应用变化太大, 数据库重新组织和构造也无济于事,这就表明数据库应用系统的生命周期结束

28、,应该建 立新系统,重新设计数据库。从头开始数据库设计工作,标准着一个新的数据库应用系 统生命周期的开始。6前台用户界面基于C#编写了这个教务管理系统,并以完成了所以要求功能。数据库连接字符串:public static stri ng Conn = "Database='school'DataSource='localhost'User ld='a'Password='a'charset='utf8'pooli ng=true"数据库连接代码 MySqlConnection conn = ne

29、wMySqlC onn ectio n(conn ectio nStri ng)用户登录界面登录实现核心代码string sql = ("select * from admin where ADMIN_USER ='0'",;reader;reader = , , sql, n ull);if();stri ng salt = reader"salt".ToStri ng();if (reader"ADMIN_PSWD".ToStri ng() = SHA256_Hash + salt)("登录成功");=reader"ADMIN_USER".ToStri ng();=(reader"ADMIN_PERMIT" . ToString();();else("密码错误");else("帐号不存在")功能选择界面4教勞管理”一 人员信息管理界面岂扰工主SnoSnomcS

温馨提示

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

评论

0/150

提交评论