已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中国地质大学 信息工程学院数据库系统课程设计学 号: 学生姓名:班 号:指导教师:中国地质大学信息工程学院2012年 3 月 3 日=数据库实习报告教务管理系统一、需求分析1、 首先要明确各个实体间的属性: a.教师:工作证号,姓名,职称,电话,系别; b.学生:学号,性别,班级,系别,出生年月; d.系别:系代号,系名,系办,公室电话; e.课程:课序号,课名,学分,上课时间,名额。 2、各个实体之间的联系:a. 每个学生都属于一个班;. 每个教师也都属于一个系,每个班的班主任都由一名教师担任;d. 一名教师可以教多门课,一门课可以有几位主讲老师;e. 一名同学可以选多门课,一门课可被若干同学选中,一名同学选中的课若已学完,应该记录有相应成绩。3、总需求:本单位学生、教师都有重名,工作证号、学号可以作为标识。教学系统主要提供数据维护、选课和信息查询。常见的查询有:系统中各对象的基本信息查询; 查询指定班、系的学生信息(名单、人数等);查询学生的成绩、学分情况;查询教师授课情况和学生选课情况等。二、概念设计1、概念模型(E-R图):a授课关系E-R图b选课关系E-R图c总E-R图教师学生课程系属于属于选修职称姓名学分上课时间课名称名额电话工作证号课序号系名系代号性别姓名出生年月学号系办公室电话授课1n111nnnm2、 数据字典:a数据项第 13 页 / 共 14 页系名:Dname, char, 20系代号:Dno, char, 3系办公室电话:Dtelephont, char, 11职称:Ttitle, char, 20工作证号:Tno, char, 10姓名:Tname, char, 20电话:Ttelephont, char, 11学号:Sno, char, 10性别:Ssex, char, 2出生年月:Sbirthday, date,姓名:Sname, char, 20课序号:Cno, char, 10课名称:Cname, char, 20上课时间:Ctime, datetime名额:Cnumber, int学分:Credit, float, 2成绩:Grade, intb数据结构学生 = 学号、姓名、性别、出生年月教师 = 工作证号、教师姓名、职称、电话、所在系的系号系 = 系代号、系名、系办公室电话课程 = 课序号、课名、学分、上课地点、名额、授课教师的工作证号选课 = 学号、 课序号、成绩c数据流 (说明,数据流来源, 数据流去向 )变更系信息 = 变更系信息,变更信息,系信息查询系信息 = 查询系信息, 系代号, 系信息变更教师信息 = 变更教师信息,变更信息,教师信息查询教师信息 = 查询教师信息,工作证号,教师信息变更学生信息 = 变更学生信息,变更信息,学生信息查询学生信息 = 查询学生信息,学号,学生信息变更课程信息 = 变更课程信息, 变更信息, 课程信息查询课程信息 = 查询课程信息, 课序号, 课程信息学生选课 = 课程号,学号查询选课信息 = 查询选课信息, 学号或课序号, 选课信息查询授课信息 = 查询授课信息, 工作证号, 授课信息查询成绩 = 查询成绩, 学号&课程号, 选课信息三、逻辑结构设计1、关系模型教师(工作证号,姓名,职称,电话,系代号)学生(学号,姓名,性别,出生年月)系(系代号,系名,系办公室电话)课程(课序号,课名,学分,上课时间,名额,工作证号)选课(学号,课序号,成绩)2、用户视图教师信息视图(工作证号,教师姓名,职称,电话,负责班级)学生信息视图(学号,姓名,性别,出生年月,班号)系信息视图(系代号,系名,系办公室电话)选课信息(课程号,学号)课程信息(课程号,课程名称,学分,上课时间,名额,授课老师)五、系统实施 完成数据库的物理设计之后,设计人员就要用RDBMS提供的数据定义语言和其他实用程序设计和物理设计结果严格的描述出来,成为DMBMS可以接受的源代码,再经过调试产生目标模式。然后就可以组织数据入库了,这就是数据库实施阶段。数据库实施阶段包括两项重要的工作:1. 数据的载入:直接在SQL2012中建立 教师,学生,选课,系,课程六个表。运用ODBC,建立mysql的服务器,关联到VB中。六、运行维护1、数据库试运行数库的试运行阶段要实际运行数据库应用程序,执行对数据库的各种操作,测试应用程序的功能是否满足设计要求。如果不满足,对应用程序部分则要修改、调整,知道达到设计要求为止。这一阶段特别强调两点,第一 该是分期分批的组织数据入库,先输入少量数据做调试用,待试运行基本合格后,再大批量的输入数据。第二 首先调试运行数据库管理系统的恢复功能,做好数据库的转储和恢复工作,一旦故障发生,能使数据库尽快恢复,尽量减少数据库的破坏。2、数据库的维护数据库的转储和恢复试系统正式运行后最重要的维护工作之一。要针对不同的应用要求制定不同的转储计划,以保证一旦发生故障能够尽快将数据库恢复到某种一致状态,并尽可能减少对数据库的破坏。数据库运行阶段,主要是由数据库管理员完成经常性的维护工作。主要包括:a数据库的转储和恢复;b数据库的安全性、完整性控制;c数据库性能的监督、分析和改造;d数据库的重组织与重构造。七、小结 两个周的数据库实习课程结束了,虽然数据库的设计工作完成的并不好,但是在这个过程中还是有些收获。首先,我知道了数据库的设计工作是有章可循的,可以按照一定的步骤、有规律的进行设计。数据库可以按阶段进行设计,在各个阶段有不同的目标,应遵循的原则和方法也各不相同,还有一些应该注意的事项等等。其中的重点是概念结构的设计和逻辑结构的设计,这也是整个数据库设计过程中最重要的两个环节。人们在评述数据库的特点时说,“三分技术,七分管理,十二分的基础数”,在数据库建设中不仅涉及技术,还涉及管理,要建设好一个数据库应用系统,开发技术固然重要,但是相比之下管理更为重要。其次,对数据库设计的各个阶段也有了初步认识。在需求分析阶段,主要的任务是通过详细的调查现实世界重要处理的对象,明确用户的各种需求,然后在此基础上确定新系统的功能,简单地说,也就是分析用户的需求,它是设计数据库的起点,需求分析的准确与否直接关系到后面各个阶段的设计。在概念结构设计阶段,要根据需求分析的结果抽象为信息结构,主要就是通过ER图来表现,不仅要考虑整个数据库的结构,还要注意子模式仕途的细节,它是整个数据库设计的关键。在逻辑结构的设计阶段,主要任务就是把概念结构设计阶段设计好的基本E-R图转换为数据库管理系统产品所支持的数据模型相符合的逻辑结构,是独立于任何一种数据模型的信息结构。在物理结构设计阶段,通常分为两步,先确定数据库的存取方法和存储结构,后对物理结构进行评价,评价重点是在时间和空间效率,如果评价的结果满足设计要求,则可进入物理实施阶段,否则,就需要重新设计或修改物理结构,有时甚至需要逻辑设计阶段修改数据模型。完成数据库的物理设计之后,就要用数据库管理系统提供的数据定义语言和其他实用程序将数据库逻辑设计和物理设计结果严格的表示出来,这是还需要进行调试。这些都是一些理论方法,还是需要在实际工作中运用这些思想,遵守设计原则,注意各阶段工作的细节,才能完成好数据库设计工作。在以后的学习中会更加注意这些细节问题,这样才会有所提高。八、附录VB源代码:1.登陆界面代码:Private Sub Command1_Click()Dim rpt As IntegerIf Text1.Text = 20121003818 Then If Text2.Text = 123456 Then If Text3.Text = Label4.Caption Then Form5.Hide Form1.Show Else rpt = MsgBox(验证码错误, vbRetryCancel + vbExclamation, 验证码) If rpt = vbRetry Then Text3.Text = Text3.SetFocus End If End If Else rpt = MsgBox(密码错误, vbRetryCancel + vbExclamation, 密码) If rpt = vbRetry Then Text2.Text = Text2.SetFocus End If End IfElse rpt = MsgBox(用户名错误, vbRetryCancel + vbExclamation, 用户名) If rpt = vbRetry Then Text1.Text = Text1.SetFocus End IfEnd IfEnd SubPrivate Sub Command2_Click()Form7.ShowForm5.HideEnd SubPrivate Sub Form_Load()Label5.FontSize = 15Label5.ForeColor = vbRedRandomizeDim x As Longx = Int(90000 * Rnd(0) + 10000Label4.Caption = xEnd Sub2学生信息界面代码:Private sqlcon As New ADODB.ConnectionPrivate sqlres As New ADODB.RecordsetPrivate sqlcmd As New ADODB.CommandDim sqlstr As StringPrivate Sub Command1_Click()MakeSqlStrAdodc1.RecordSource = select *from 学生 where 学号= & sqlstrAdodc1.RefreshEnd SubPrivate Sub Command2_Click()ret = MsgBox(是否要删除 + Adodc1.Recordset(学号) + 号学生的记录, vbYesNo, 提示)If ret = vbYes Thensqlcmd.ActiveConnection = sqlconsqlcmd.CommandText = delete from 学生 where 学号= + Adodc1.Recordset(学号)sqlcmd.ExecuteAdodc1.RecordSource = select * from 学生Adodc1.RefreshEnd IfEnd SubPrivate Sub Command3_Click()Dim sqlupstr As Stringsqlupstr = select * from 学生 where 学号= & Trim(Text1.Text)sqlres.Open sqlupstr, sqlcon, adOpenDyamic, adLockPessimisticIf Not sqlres.EOF ThenElsesqlres.AddNewsqlres(学号) = Text1.Textsqlres(姓名) = Text2.Textsqlres(性别) = Text3.Textsqlres(出生日期) = Text4.Textsqlres(系代号) = Text5.Textsqlres.UpdateEnd Ifsqlres.CloseAdodc1.RecordSource = select * from 学生Adodc1.RefreshEnd SubPrivate Sub Command4_Click()Dim sqlupstr As Stringsqlupstr = select *from 学生 where 学号= & Trim(Text1.Text)sqlres.Open sqlupstr, sqlcon, adOpenDyamic, adLockPessimisticIf Not sqlres.EOF ThenElsesqlres.AddNewsqlres(学号) = Text1.Textsqlres(姓名) = Text2.Textsqlres(性别) = Text3.Textsqlres(出生日期) = Text4.Textsqlres(系代号) = Text5.Textsqlres.UpdateEnd Ifsqlres.CloseAdodc1.RecordSource = select * from 学生Adodc1.RefreshEnd SubPrivate Sub Form_Load()sqlcon.Provider = SQLOLEDBsqlcon.Open Server=Y500-X64SQLEXPRESS;DataBase=教务管理系统;UID=sa;PWD=;End SubPrivate Sub Form_Unload(Cancel As Integer)sqlcon.CloseEnd SubPublic Sub MakeSqlStr()sqlstr = If Trim(Text6.Text) Thensqlstr = Trim(Text6.Text)End IfIf Trim(Text6.Text) = Thensqlstr = Text1.TextEnd IfEnd Sub3.学生课程成绩代码:Private sqlcon As New ADODB.ConnectionPrivate sqlres As New ADODB.RecordsetPrivate sqlcmd As New ADODB.CommandDim sqlstr As StringPrivate Sub Command1_Click()MakeSqlStrAdodc1.RecordSource = select *from 选修,学生 where 选修.学号= & sqlstrAdodc1.RefreshEnd SubPrivate Sub Form_Load()sqlcon.Provider = SQLOLEDBsqlcon.Open Server=Y500-X64SQLEXPRESS;DataBase=教务管理系统;UID=sa;PWD=;End SubPublic Sub MakeSqlStr()sqlstr = If Trim(Text5.Text) Then sqlstr = Trim(Text5.Text)End IfIf Trim(Text5.Text) Then sqlstr = Text2.TextEnd IfEnd SubPrivate Sub Form_Unload(Cancel As Integer)sqlcon.CloseEnd SubPrivate Sub Image1_Click()Form1.Picture = LoadPicture(picturefile)End Sub4.教师信息代码:Private sqlcon As New ADODB.ConnectionPrivate sqlres As New ADODB.RecordsetPrivate sqlcmd As New ADODB.CommandDim sqlstr As StringPrivate Sub Command1_Click()MakeSqlStrAdodc1.RecordSource = select *from 教师 where 工作证号= & sqlstrAdodc1.RefreshEnd SubPrivate Sub Command2_Click()ret = MsgBox(是否要删除 + Adodc1.Recordset(工作证号) + 号教师的记录, vbYesNo, 提示)If ret = vbYes Thensqlcmd.ActiveConnection = sqlconsqlcmd.CommandText = delete from 教师 where 工作证号= + Adodc1.Recordset(工作证号)sqlcmd.ExecuteAdodc1.RecordSource = select * from 教师Adodc1.RefreshEnd IfEnd SubPrivate Sub Command3_Click()Dim sqlupstr As Stringsqlupstr = select * from 教师 where 工作证号= & Trim(Text1.Text)sqlres.Open sqlupstr, sqlcon, adOpenDyamic, adLockPessimisticIf Not sqlres.EOF ThenElsesqlres.AddNewsqlres(工作证号) = Text1.Textsqlres(姓名) = Text2.Textsqlres(职称) = Text3.Textsqlres(电话) = Text4.Textsqlres(系代号) = Text5.Textsqlres.UpdateEnd Ifsqlres.CloseAdodc1.RecordSource = select * from 教师Adodc1.RefreshEnd SubPrivate Sub Command4_Click()Dim sqlupstr As Stringsqlupstr = select *from 教师 where 工作证号= & Trim(Text1.Text)sqlres.Open sqlupstr, sqlcon, adOpenDyamic, adLockPessimisticIf Not sqlres.EOF ThenElsesqlres.AddNewsqlres(工作证号) = Text1.Textsqlres(姓名) = Text2.Textsqlres(职称) = Text3.Textsqlres(电话) = Text4.Textsqlres(系代号) = Text5.Textsqlres.UpdateEnd Ifsqlres.CloseAdodc1.RecordSource = select * from 教师Adodc1.RefreshEnd SubPrivate Sub Form_Load()sqlcon.Provider = SQLOLEDBsqlcon.Open Server=Y500-X64SQLEXPRESS;DataBase=教务管理系统;UID=sa;PWD=;End SubPrivate Sub Form_Unload(Cancel As Integer)sqlcon.CloseEnd SubPublic Sub MakeSqlStr()sqlstr = If Trim(Text6.Text) Thensqlstr = Trim(Text6.Text)End IfIf Trim(Text6.Text) = Thensqlstr = Text1.TextEnd IfEnd Sub5.课程信息代码:Private sqlcon As New ADODB.ConnectionPrivate sqlres As New ADODB.RecordsetPrivate sqlcmd As New ADODB.CommandDim sqlstr As StringPrivate Sub Command1_Click()MakeSqlStrAdodc1.RecordSource = select *from 选修 where 课程号&学号= & sqlstrAdodc1.RefreshEnd SubPrivate Sub Form_Load()sqlcon.Provider = SQLOLEDBsqlcon.Open Server=Y500-X64SQLEXPRESS;DataBase=教务管理系统;UID=sa;PWD=;End SubPrivate Sub Form_Unload(Cancel As Integer)sqlcon.CloseEnd SubPublic Sub MakeSqlStr()sqlstr = If Trim(Text7.Text) Thensqlstr = Trim(Text7.Text)End IfIf Trim(Text7.Text) = Thensqlstr = Text1.TextEnd IfEnd Sub6.学生选课:Private sqlcon As New ADODB.ConnectionPrivate sqlres As New ADODB.RecordsetPrivate sqlcmd As New
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东省安全员B证考核模拟试题
- 2025年钳工实操考试试题
- 公路水运工程试验检测人员考试参考试题(附答案)
- 《企业战略管理》复习题
- 2025年《汽车保险与理赔》相关知识试题库与答案
- 2025年创建全国文明城市知识竞赛题
- 岢岚县事业单位考试真题2022
- 2025年【湖南省安全员-C证】考试题及答案
- 四川省专升本计算机基础-试卷7-真题-无答案
- 单招计算机应用基础计算机病毒与防治测试卷
- 七年纪学生安全教育课件
- (2025)共青团入团考试题库及完整答案
- 《计量促进民营经济发展壮大若干措施》
- 广东省佛山市顺德区大良街道顺峰小学2024-2025学年三年级上学册期中测试数学试卷(含答案)
- 劳技课凉拌菜课件
- 2025年阿克苏辅警招聘考试题库及完整答案详解一套
- 2025年新教材部编人教版二年级上册语文 第15课 朱德的扁担 教学课件
- 锅炉事故应急专项预案
- 学习宪法精神争做守法青年
- 胰岛素抵抗综合管理方案与减重训练
- MOOC 创业基础-暨南大学 中国大学慕课答案
评论
0/150
提交评论