版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库原理与应用课程设计说明书题目学生成绩管理系统院系:信息工程学院网络工程专业专业班级:080623学生姓名:指导教师:2010年1月1 日一、数据库需求分析设计按规范要求撰写需求分析设计文档1、任务概述 该学生成绩管理系统,实现简单的密码修改、成绩查询、课程查询、学生查 询等操作,并能实现简单的数据统计。此系统主要完成用户密码登录、用户密码的修改、成绩查询、课程查询、学 生查询、具体成绩查询等基本功能。(一)成绩管理1. 成绩修改 前选中要修改的成绩信息,然后进行修改。2. 成绩添加 直接弹出添加对话框,然后进行添加。3. 成绩删除 前选中要删除的成绩信息,然后直接删除。4. 成绩查询 通
2、过输入相应信息,查询学生成绩信息。(二)课程管理1. 课程修改 实现对课程名、学时、学分的修改。2. 课程添加 对一门新开设的课程进行录入,并存入数据库。3. 课程删除 对一门不再开设的课程进行删除,并从数据库中删除。4. 课程查询 实现对各个老师教授以及学生选修的课程的查询。(三)学生管理1. 学生信息修改 修改选中当前学生的信息。2. 学生信息添加 增加新学生的信息。3. 学生信息删除 删除选中当前学生信息。4. 学生信息查询 查询对应的学生信息。(四)教师管理1. 教师信息修改 修改选中当前教师的信息。2. 教师信息添加 增加新教师的信息。3. 教师信息删除 删除选中当前教师信息。4.
3、教师信息查询查询对应的教师信息。五)班级管理1. 班级的信息修改2. 班级的添加3. 班级的删除六)2、需求说明2.1 开发背景随着学校向全国及至世界范围的持续扩张, 学生人数的增加, 对于学生的信 息管理也越来越复杂, 要求也越来越高, 因此需要一个全面、 详细的信息管理系 统,以便完成对学生信息的管理。 无纸化的环境是技术时代的一个梦想, 也是许 多学校和公司越来越意识到的一个真实世界。 以前是由学生档案和公告栏来提供 各种信息及通告新的变化, 而现在这个繁杂的工作已被网站和内部计算机网络所 取代。使得学生信息的管理更方便、安全。根据调查得知, 现在广大学生进行信息提交的主要方式是基于文件
4、、 表格等 纸介质的手工处理, 学生信息管理部门信息处理工作量大, 容易出错, 且管理方 面因人而异。 然而学校网上学生信息管理系统应该覆盖各个所需功能, 使各级管 理人员和广大教职工在信息系统的辅助下进行工作, 提高管理的整体水平。 使得 学生信息管理更方便。学生信息管理系统,可以用集中的数据库将与人力资源管理相关的信息全 面、有机地联系起来, 有效地减少了信息更新和查找中的重复劳动, 保证了信息 的相容性, 从而大大地提高了工作效率, 还能使原来不可能提供的分析报告成了 可能。在采用和实施学生信息管理系统之后, 就会将依赖于人的过程改为依赖于 计算机系统的过程。学校管理人员只要获取了相应的
5、权限, 就可以随时进入系统, 直接查阅相应的信息。采用和实施学生信息管理系统不仅仅是为了提高工作效 率。为了除掉手工记录的低效率工作方式,运用信息化管理,提高工作效率,开 发本系统。应该看到,在实施学生信息管理系统后,经过整合的、较为全面、准确、一 致和相容的信息不仅可以让学校领导对本学校学生资源的现状有一个比较全面 和准确的认识,同时也可以生成综合的分析报表供学校领导人在决策时参考。2.2 开发目的 学生成绩管理系统是应对学生人数增多、信息量增大的问题,实现管理的现 代化、网络化, 逐步摆脱当前学生成绩管理的人工管理方式, 提高成绩管理效率 而开发的。希望该开发程序能够解决学生信息存储、 学
6、生成绩查询、 录入还有课 程查询等一系列功能, 并提供了对各功能模块的查询和更新功能, 且这两种功能 基本上是通过存储过程来实现的, 其中学生成绩查询和学生信息查询是系统开发 的重点。2.3 功能需求1) 教职工:a. 信息要求: 对学生成绩的了解,对学生成绩会有一个成体的了解,在今后的课程教学中 可以对自己进行改进。 同时还可以对教授的课程进行修改和重设。 还可以进一步 了解学生的信息,加深对学生的了解,便于因材施教。b. 处理要求:当学生基本信息发生变化时, 老师能对其进行修改。 比如某些同学中有转校、 后转来该系或转到其他系中, 老师要能根据事实情况进行更新。 需要有的操作是 修改、删除
7、、增加。能够管理课程信息。如老师进行排课的时候能够有序的安排,不会出现错排 或重复等一系列状况。能够进行课程名、课时、学分的修改、删除和增添。对成绩的管理,能够进行成绩的录入、修改、删除,能够清晰的了解学生的 成绩和大体情况,以便做出相应的总结和改进。C.安全性与完整性要求: 安全性要求:1. 系统应设置访问用户的标识以鉴别是否是合法用户, 并要求合法用户设置 其密码,保证用户身份不被盗用;2. 系统应对不同的数据设置不同的访问级别, 限制访问用户可查询和处理数 据的类别和内容;3. 系统应对不同用户设置不同的权限, 区分不同的用户,如区分普通用户(学 生),教职工。完整性要求:1. 各种信息
8、记录的完整性,信息记录内容不能为空;2. 各种数据间相互的联系的正确性;3. 相同的数据在不同记录中的一致性。2) 学生:a. 信息要求: 能够查询自己的成绩信息和大家的整体成绩好做出对自己的新的定位, 同时 还有更改自己的学生信息,还有就是查询新的课程信息。b. 处理要求: 当学生发现自己信息出现错误时,可以根据自己的实际情况来进行更改,比 如某同学发现自己的年龄存储出现了错误就需要相应的机制进行修改、删除等。同时还可进入成绩查询系统。在该界面中同学可以查询自己的成绩,还可以 查询整个科目的全部成绩。2.4 数据需求学生成绩管理系统就是对学生成绩信息的管理, 所以首先我们需要知道的是学生有那
9、些 信息,并且是怎样进行分类的。学生信息包含: 学生基本信息、 课程基本信息、选课信息。学生基本信息根据要求应该 包括学生对应的学号,姓名,性别,年龄,班级号,政治面貌等;课程基本信息应该包课程 号,课程名,学分,备注等;选课信息包含课程号, 学号,考核性质,平时成绩, 考试成绩, 实验成绩,总成绩等。教师信息包含: 教师基本信息, 教师授课基本信息。 教师基本信息根据要求应该包括教 师对应的教师号,姓名,性别,院系号,学历等 ; 教师授课信息应该包括课程号,教师号,课程性质(选修或必修)等。院系班级信息包含:院系基本信息、班级基本信息。院系基本信息根据要求应该包括院 系号和院系名。班级基本信
10、息应该包括班级号,院系号和专业名。与学生唯对应的是学号,所以学号是唯一的主键,其他的都不能是,根据学号我们可以查找学生的基本信息,还有学生姓名等有关信息; 根据课程号可以知道学生对应的成绩等。与课程一一对应的是课程号,所以课程号是唯一主码, 其他的都不是,根据课程号我们可以查询课程的基本信息,如课程名、对应的课时和对应的学分等。与成绩对应的有两个主码,一个是课程号还有一个是学号。 只有这两个同时确定了之后 才能确定一个准确的成绩。与教师唯对应的是教师号,所以教师号是唯一的主键,其他的都不能使,根据教师号我们可以查找教师的基本信息,还有教师姓名等有关信息;根据课程号可以知道教师授课的课程性质等。
11、与院系唯对应的是院系号,所以院系号是唯一的主键,其他的都不是,根据可吵我们可以查询院系的基本信息,如院系号,院系名等。根据班级号可以知道学生的院系号以及专业名称等信息。综合分析对信息管理系统分八个表:学生表(学号,姓名,性别,年龄,班级号,政治面貌,学生密码,入学时间,家庭地 址,备注)课程表(课程号,课程名,学分,备注)教师表(教师号,姓名,性别,院系号,学历,政治面貌,职称,密码,备注)授课表(课程号,教师号,课程性质)选课表(课程号,学号,考核性质,平时成绩,考试成绩,实验成绩,总成绩)管理员(用户名,密码,备注)班级表(班级号,院系号,专业名)院系表(院系号,院系名)3. 数据流图学生
12、管理登陆成功退岀系统审课程管理成绩查询3、数据字典数据项是数据库的关系中不可再分的数据单位, 下表分别列出了数据的名称、 数据类型、长度、取值能否为空。利用 SQLServer 2000建立“学生选课”数 据库,其基本表清单及表结构描述如下:数据库中用到的表:数据库表名关系模式名称备注Stude nt学生表学生学籍信息表Course课程表课程基本信息表Teacher教师表老师的基本信息SC选课表选课成绩信息表Admin管理员管理员基本信息TC授课表授课的基本信息Ban班级表班级的基本信息School院系表院系的基本信息Student基本情况数据表,结构如下:字段名字段类型约束控制说明S#cha
13、rPrimary key学号s_n amecharNot Null学生姓名s _sexchar男或女性别s_passwordchar学生密码B#char班级号s_ageint年龄s addresschar地址s_poschar政治面貌s en terchar入学年份s remarktext备注course数据表,结构如下:字段名字段类型约束控制说明c#char主键(primary key )课程号c n amecharnot n ull课程名称c markintnot n ull学分c remarktextnot n ull备注SC情况数据表,结构如下:字段名字段类型约束控制说明c#char外
14、部键课程号s#char外部键学号aver_grafloat平时成绩exam_grafloat考试成绩lab grafloat实验成绩gradeint成绩accesschar考核性质Admin基本信息数据表,结构如下:字段名字段类型约束控制说明admi nchar主键(primary key )管理员帐户名passwordchar管理员密码remarkchar备注TC信息数据表,结构如下:字段名字段类型约束控制说明c#char外部键课程号t#char外部键教师号sortchar课程性质Teacher基本信息数据表,结构如下:字段名字段类型约束控制说明t#charPrimary key教师号t_n
15、 amecharNot Null教师姓名t _sexchar男或女性别y#char院系号t passwordchar教师密码t_xuelichar教师学历t poschar政治面貌t titlechar职称t remarktext备注Ban基本信息数据表,结构如下:字段名字段类型约束控制说明b#char主键班级号subjectverchar专业名称y#char院系号School基本信息数据表,结构如下:字段名字段类型约束控制说明y#char主键院系号schoolverchar院系名、数据库概念设计1. 按规范要求撰写数据库概念设计文档:E-R图由需求分析的结果可知,本系统设计的实体包括:(1)
16、 学生基本信息:学号,姓生名,性别,年龄,班级号,政治面貌,学生密码,入学时间,家庭地址,备注(2) 课程基本信息:课程号,课程名,学分,备注(3) 教师基本信息:教师号,姓名,性别,院系号,学历,政治面貌,职称,密码,备注(4) 授课基本信息:课程号,教师号,课程性质(5) 选课基本信息:课程号,学号,考核性质,平时成绩,考试成绩,实验成绩,总成绩(6) 管理员基本信息:用户名,密码,备注(7) 班级基本信息:班级号,院系号,专业名(8) 院系表:院系号,院系名2.由上述分析可得到系统的E R图:/|管理员班级图2-1 整体E-R图2. 局部概念模式设计图2-2学生E-R实体图图2-3教师E
17、-R实体图用用名管理员晋E-R实体图管理员图2-4课程E-R实体图课程图2-5学院E-R实体图学院图2-6班级图2-7班级E-R实体图图2-8选课E-R实体图图2-9授课E-R实体图三、数据库逻辑设计数据库逻辑设计就是将E R图转换为关系模型的过程,即将所有实体和关 系转换成一系列的关系模式。转换过程中常见规则有:(1)一个实体型转换为一个关系模式;(2)一个一对一的联系可转换成一个独立的关系模式,也可与任意一端对应 的关系模式合并;(3)个一对多的联系可以转换成一个独立的关系模式,也可与多的那一端 对应的关系模式合并;(4)一个多对多的关系转换成一个关系模式。根据以上四条规则,下面将 ER图
18、转换成关系模型:该设计以概念结构设 计中的E-R图为主要依据,设计出相关的整体逻辑结构。根据总E-R图了解有六 个实体,两个关系模式如下:学生表(学号,姓名,性别,年龄,班级号,政治面貌,学生密码,入学时间,家庭地 址,备注),其主关键字为学号;课程表(课程号,课程名,学分,备注),其主关键字为课程号;教师表(教师号,姓名,性别,院系号,学历,政治面貌,职称,密码,备注),其主关键字为教师号;管理员(用户名,密码,备注),其主关键字为用户名;班级表(班级号,院系号,专业名),其主关键字为班级号和院系号;院系表(院系号,院系名),其主关键字为院系号;还有两个关系为:授课表(课程号,教师号,课程性
19、质),其中主关键字为课程号,教师号是外键也是主键;选课表(课程号,学号,考核性质,平时成绩,考试成绩,实验成绩,总成绩),其中主关键字为学号和课程号。四、数据库物理设计1 .文件分布本系统采用Microsoft公司的SQL Sever2000数据库管理系统。在统一的数据 库下面建立数据表。首先下图描述的是整体数据库系统的基本逻辑构架。AcminadminptESwardremarkBanb#subject2Students*5_5!gXV#s_p as swordsaddbress s_remsrksc0School school T y#TeacherTC卫i#sortr . hCourse
20、c remark2.索引结构系统数据库中包含以下 6 个表:Stude nt,Course,SC , Admin,Teacher,TC,Ban,School 等。(学生信息表)Student:用于保存学生的学号,姓名,性别,年龄,班级号, 政治面貌,学生密码,入学时间,家庭地址等信息.(选课信息表)SC:课程号,学号,考核性质(通过或未通过),平时成绩, 考试成绩,实验成绩,总成绩等信息。(课程信息表)Course:用户保存课程信息,包括课程名,课程号,学分等信 息.(管理员信息表)Aami n:用于保存管理员帐号,密码等信息。(教师授课信息表)TC:用于保存教师授课的课程名,教师工号以及课程
21、性质(选修/必修)等信息。(教师基本信息表)Teacher :用于保存教师的教师号,姓名,性别,院系 号,学历,政治面貌,职称,密码等信息。(班级基本信息表):用于保存学校开设班级的班级号,院系号,专业名等 信息。(院系基本信息表):用于保存学校开设院系的院系号,院系名等信息。系统管理员表:Admin列名数露类型1长度允许签char20passwordchar20Zremarktext16学生三信息表:Student厂列名数据类型允许空男char10char8char4int斗b#char10s_pdschar20Vassword亡har105_enterchar10VE_addre55var
22、char20Vsjrem&rkvar char10V课程基本信息表:Course列名数据类型允许空|char20c_mamechar20c_markint4Caremarkchar20选课成绩信息表:SC列名数据类型允许空char10char10accesschar10averMlgxafloat6exam_;grafloatElab_grafloat6/gr血fl&at6教师授课信息表:TC列名数帖类型长度允许空Ichar20t#char20sortchar20班级基本信息表:Ban列名数据类型允许空b#char10siibj setvarchar207#char10教师基本
23、信息表:Teacher列名数据类型长度允许空?IE亡har10char8char4charIQtxuelichar100*5uh世£3t_ti ttlechai-10t_pass*crdchar13t_r emarkvar char10院系基本信息表:school列名数据类型长度允许空schocl20y#char10五、数据库功能设计1. 熟悉数据库系统软件、数据库管理、查询分析器的使用点击工具,选择使用 SQL查询工具,便可用 SQL语句实现一些操作怖 SQL Server Enterprise Manager -益制台据目SQL Server:筍控制台© 窗口(世)帮助
24、(出数馮库2个项目1 SNorthwind pubs操吨查看©工具(匸 0 » | E E窗団尿童 树|控制台根目录I-四 Microsoft 5QL ServersH 目 5QL Server 组-j()(L0匚AL) (Wind。邮 NT)创建名为“ student ”的数据库:查询DELL 31 .master .DELL 31 A dmimstra t or 无标JS"create database student!CREATE DMAEASE进程正在磁盘 飞tudgrrt'上分配0畀5MB的空间CREATE DATABASE进程正在厳盘1 stu
25、dent.log壬分配D.49厢的空间°2. 数据表结构的建立、修改表的建立(只选了创建部分表的SQL语句)1 查诲DELL31.student.DELL31 Administrator 一 无标遵 1*use student gocreate table Students# char(10) not null primary key,s_name char 8 not nulljs_sex char(4 ' null,S_age int nul lj,b# char (10) not riull foreign key references Eari b津 s_pos ch
26、ar (20 nulljs_password char lit) not null, s_ervter char (10 nullj s_address varchar 20 nullj s_remark varchar(10) null查询所创建的各表j±rs#snaraes sez s age b# s pos s p as sword s enteraddress s remarkic#cnajuec'mark c remarkb# subject y#c#s#accessaver gralab gragr adet# char 10 not null foreign
27、kisy referenc已乞 Teacher t# ,压c# char (10) not null foreign key references Coursesort char (10) not nul 1,priwary key(t#, c#)gos&lect*fromStudentselectf roiiCQurseselect*fromEans&lsctfromSCselect:+:fromTCselectfromTeacherselect當fromSchoolselectfrom.AdunrJ3. 数据的添加、修改、删除 数据的添加功能的实现insert into A
28、dinselect '小明 * 111P j 1 null* union select 1 j * 11111,1 null union select 1j * 1111 *,1 uninn* select * from Adminadihinpasswordremark1小李1111null2小明1111null3小张miunion数据表的修改update Admin set password'1234" where adnin-' seleCt from Admin1adminpasswordremark小李1234null2小明1111null3小张11
29、11union数据表的删除deist e adninwhere admin " 小李 select * from Adminadminpassvordreiaark1小明1111null21111union4.单表查询、多表综合查询 单表查询I查询 Adjnin+/select + from Admin*1adminpasswordre-mark1小杰1111null2小李tillnull3小明minull4小张minull多表查询/*查询Admin表*/select * from Adnin/然利用多表查询老师所授受课程的课程名*/SELECT Teacher. t_n3oie,
30、Course, c_nameFKOM Coursej Teachetj TCWHERE Teacher.TC.t# AND TC.c#=Course.c#t namec name1李蘿喜JAVAfi序设计2曹均阔数据库原理3李克伟路由器技术4韦芙芽通信原理5黄忠良计算机组成原理5.视图、存储过程、触发器的使用视图实现功能的截图学生基本信息视图柠CREATE VIEW学生基本愴息视图ASSELECT s#, snainGj s_sexban. sub jectFROM Student, Ban甲HERE Student.b#=Ean. b#GO使用该视图CUT UpT *from"学生
31、基本信息视图GOIs names sexs age subject123460806230108062302080623030806230408062305婕萍华丽 雪鹫智足笑 何于徐#徐201919网络工程 网络工程 网络工程 网络工程 网络工程891008062306080623070BD6230808062309nRnfi7?in周树其韩冠宙陈相良18171920网络工程 网络工程 网络工程 网络工程存储过程实现功能的截图/审存储过程,降序排名大家的总的平均战绩时 create proc avger_grade_rangeasselect s#j avg (grade; as 总平均战绩
32、 from 5Cgroup by s#order by avg grade) descesec avger_grade_range1L5#总平均成绩10806230376.02080E230172. 33333333333332930806230271. 0J e J J UU W KJ W ZU 丄 li £八存衞丈鹼现,増加TC表打create proc add_TC(M# char 110). c# char '10), sort char :10 asinsert TC(t#, c#,sortvalues 08000011 080000120BD0O013触发器实现功
33、能的截图/*触发器是一种由事件驼动的特殊存储过程,是独立存储在数据库里的对象,就橡数据表一样° 与存储过程的区别是:存储过程是通过其他程序来调用执行的匸而融发器是通过事件来触岌的 当某个事件发生昙,融裳器就自动的被触发运行。*/"触发器功能实现由平时成绩,考试成绩,实验成绩*来计算得岀总成绩订CREATE TRIGGER graden SCFOR INSERTASUPDATE SCSET grade=0. 1 - lab_grat 0. 2 aver_grai-0. ? exam_gra创逢触发晋,当就表中graded干等于別时,显示通过*/create trigger a
34、ccess_verfiylon SCfor updat ezsupdate SCset access= 通过where frade>-SOexe匚 quBry SC t#. c#. ©sort£0exec add_TC ' 100105, / 06000015,/ 必修,exec query_TCd100101100102100103100104100105修修<俺修0800001408000015accessaver gra exlabgra grade08000011080000120800001308000013080000140306230103
35、062301080623010806230208062303甬一甬一通通it#c#sort6系统功能设计及其对应的数据库操作功能的实现在此次课程设计中,由于知识理论的不够完备,再加上时间仓促没有实现界面, 让应用程序 来访问数据库,实现数据库中的各些功能。不过在下次的web课程设计中,我们会完善这点, 同时我们也会不断的继续学习,以补充这些不足之处。五.试验体会1. 姓名: 于晓婕(08062302) 经过近两周的课程设计,简单的学生成绩管理数据库系统基本完成,系统基本功能实现, 测试运行也基本正常。该系统基本上完成了教师对学生成绩的增加、删除、修改、查询、显 示和统计功能和学生对自己成绩,等
36、信息的查询。在这次课程设计的过程中,学习到了很多以前在数据库学习中的没有学到的数据库的操作 知识,只有多操作多发现问题才能够熟练的掌握。在开始设计的E-R图中,由于经过老师检查过后认为数据库不够完善,所以我们又重新进行 E-R图的设计和规划各表的数据内容,并且要防止数据冗余的出现。最后我们就设计出的E-R图,设计了八个表,学生基本信息,教师信息表,选课信息表,课程信息表,管理员信息表,教师授课信息表,班级基本信息表,院系表,这样可以进行一个院系班级等的分别查询,还可以进行学生,教师信息的分别查询等功能。在进行设计完 E-R图后,我们四个成员进行了分工,我先把数据库建好, 把数据输入数据库中,在
37、此过程中是全部利用 SQL语句来建立的,而不是利用界面手动直接的来建立数据库 和输入数据的,因为在这个过程中运用SQL语句来实现更加的稳定对于整个数据库。建立好数据库后,我主要负责存储过程的部分,同时也了解了一下视图和触发器的编写和功 能的实现。我了解到了触发器是一种由事件驱动的特殊存储过程,是独立存储在数据库里的对象,就像数据表一样。与存储过程的区别是:存储过程是通过其他程序来调用执行的;而 触发器是通过事件来触发的,当某个事件发生是,触发器就自动的被触发运行。对于在课设中的学习,对存储过程部分的学习中,了解到了存储过程是存储在服务器上的例行程序及过程,在 SQL SERVER只能定义某个过
38、程,其中记录了一系列的造作,每次应用 程序只需调用该过程就可完成该操作,这种SQL SERVER中定义的过程就被称为存储过程。它可以完成以下功能:a.接受输入参数并返回多个输出值 ;b:包含T-SQL语句用以完成特定 的SQL SERVE操作,其中可以有对其他存储过程的调用;c.返回一个指示成功与否及失败原因的状态代码给调用它的过程。还有就是存储过程不能接用过程名返回值,也不能直接在表达式中使用。经过这些知识的学习和对存储过程的SQL语句的编写更加理解了存储过程,也明白了数据库的操作。这次课设中数据库知识差不多都掌握了,对于那些像触发器、存储过程、自定义函数、视图等等程序的建立、使用方法和作用
39、,我又有了更深一步的了解和掌握。但是还有很多欠缺,就像我做这些东西,感觉没有一定的逻辑顺序,好象之间没有多大的联系似的,所以还要更进一步的完善,但是由于时间紧迫, 没有办法完善它。还有一些使用的不够清楚和熟悉,所 以以后会继续努力和学习,去完善它。还有这次试验中,没有实现界面的设计使数据库与应用程序连接起来,所以这也是一个不够完善的地方。但是在下次的web课程设计中,我们会尽力去完善界面的设计。在这个阶段,由于自己动手不足和对开发工具的陌生,最主要的是,对知识还不是熟练地掌握,系统和编写存储过程中遇到了很多大大小小的问题,在一次次克服困难的过程中,我得到了极大的锻炼,获得了许多宝贵的数据库开发
40、经验和技巧,我相信这将为我今后的学习工作打下坚实的基础。而这对我来说也是一次丰富的收获。2. 姓名:屈亚锋 08062318为期两周的数据库课设结束了,是时候总结自己在实验中的问题了:A. 数据库的前期设计阶段,通过自己平时学习的理论知识,我们一步一步的建立了E-R模型,尽管我们还有很多方面做的还不是很尽善尽美,但我们大家都很尽力的去完善这个系统,从中感到大家都很配合,我们把这个当做一个小数据库开发,也让我体会到了团队精神很重要。两周时间尽管很短,尽管我们不是整天泡在知识的海洋,可是我很珍惜这数据库课设,大三了,不锻炼自己不行了。B. 课设之前,我们每个人都准备了前续工作,无论是表格的设计,还
41、是总体设计大家都有参与C. .真正上机实验的时间是短了点,但老师给了我们很多课外思考的时间,我觉得这很合理 吧。我们暴露的问题也不少,现在就有关我自己负责那部分出现的问题细说一下吧我主要负责的是触发器的实现,在本次数据库课设中,我觉得真正能体现触发器在数据库 中应用有一下几个:/*触发器功能实现由平时成绩,考试成绩,实验成绩,来计算得出总成绩*/CREATE TRIGGER gradeon SCFOR INSERTASUPDATE SCSET grade=0.1*lab_gra+0.2*aver_gra+0.7*exam_gra/*创建触发器,当 SC表中grade大于等于60时,显示通过*/
42、create trigger access_verfiy1 on SCfor updateasupdate SCset access=' 通过'where grade>=60这两个触发器都能实现自己所定义的功能,当我在这两个基础之上,再建立一个与其语义相反的触发器时,比如create trigger access_verfiy2on SCfor updateasupdate SCset access=' 未通过'where grade<60当计算有成绩grade小于60时,它就不会自动执行这个触发器,反而会报错,超出所规定 嵌套层次(32层)此类的错
43、误信息,网上查了下,可能过多的调用了存储过程,触发器等, SQL系统为了不影响性能,规定了最多嵌套层次,对这些做出了限制等。但是删除access_verfiy2这个触发器之后,另外一个又可以正常触发了,这个错误给了我很大的启发1. 我们在编写SQL语句时,注意代码正确性2. 写的代码尽量精简,这个对系统也有很好的维护性吧3. 设计一些触发器 存储过程的时候,要考虑到他们之间,还要考虑系统的开销或者说系统能否支持它的正确运行D此次课设,让我加深了对课堂上所学理论知识的理解,也培养了我们编写 SQL语句的能力,对一些基本的SQL语句的加强,同时也掌握了不少东西。不说别的,就说我负责的触发器这 块,
44、我对它了解了不少,首先他的分类有三种,insert update delete,它是一种比较特殊的存储过程,都是事先写好存储,当某个事件发生的时候,便自动触发相关触发器执行,这 个对数据有一定的保护作用,尤其是一些重要信息的删除,更新等,所以在设计数据库时, 触发器的作用不可小觑E.这几天的课设,真的是受益匪浅,在与组员的交流下,我还学到了其他的东西,视图,存 储过程,触发器,查询,删除,更新,修改等等数据库的基本操作都掌握一二了,这样子算 是让我们学到了比较全面的东西了吧。课设是结束了,但数据库的学习不会断的,以后还会经常去学习用到它的。随着计算机的普及以及计算机技术的提高, 数据库这门技术
45、慢慢深入到我们的生活当中并且 影响和方便者人们,这是一门很实用的学科,相信在以后的学习当中还会继续努力相关知识, 让自己走的更远更深。3. 姓名:方圆(08062310)这次课程设计,总还是让我学到了些东西, 有这样一点,就不虚此行了。SQLServer2000 我是装在自己电脑的虚拟机里的,因为我自己的电脑系统是WIN7,对于2000兼容性不好。所以我就特意在虚拟机里装了个XP系统,专门拿来作数据库。反正虚拟机和主机之间可以桥接,就好像是局域网中的两台电脑一样,这样一来,反倒让我觉得数据库更有意思了,因 为我不仅可以访问本地的数据库服务器中的数据库,也可以访问局域网中其他数据库(其实是虚拟机
46、中的,但是和现实中的没有区别)。WIN7系统里面,我装的是 SQLServer2005,是Visual stdio 2008自带的,我多不好意思,还以为捡了个便宜,界面又友好,操作又简单, 谁知道跟2000的数据库文件不兼容,我想还原数据库都不可以。不过这样一番折腾,总让 我对SQL Server有了更深的了解,知道了它到底是个什么机制,为什么就饿能提供这种服 务呢?原来,数据库管理系统相当于在主机上运行了一个程序,只不过这个程序比较特殊, 是系统级别的,而且能通过通信协议和其他应用程序通信罢了。而且,这个数据库服务,在我看来,跟一台WEB服务器的性质,或者文件服务器的性质是一样的,都是提供一
47、定的数据服务,只不过,我提供的是有逻辑联系的数据,而他们提供的是一些组织好了的网页,或者一些硬生生的文件罢了。然后就是数据库操作方面的了,实验环境已经搭建好,实验室(D508)的环境更好,好多机子都是互联的, 个人是不可以有的, 还好我有虚拟机。首先当然是创建一个符合需求的 数据库了,到底怎么样才算符合需求,说到底就是一个人性化的问题,就是无论我们编程的人多么辛苦,我们开始设计的时候都应该站在客户的角度去设计,用我们十倍的努力,去换回客户哪怕基本不会用到的功能,模块。为什么这样形同鸡肋的东西我们还要高呢,因为不 搞不行,客户是几位挑剔的,虽然是基本上不用,但是不代表一定不会用到,等到他要用,而我们有没有设计到,那么,他是有理由抱怨我们没设计好的,总之,拿人钱财,替人消灾,顾客就是上帝。用最完善的服务,赢得每一分钱的价值。最后说一下应用程序方面,我觉得这个其实是最好玩的东西。说实话,让我一直在那写SQL语句,实在是有点扛不住。现在好了,数据库设计好了之后,就去尝试一下应用程序。首先是和数据库连接,对了,忘了说,我用的是ADO这个在过去的一段时间一直是主流的数据库访问技
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省江阴市第二中学2025-2026学年初三5月月考(化学试题理)试卷含解析
- 广东省深圳市南山区2026届中考生物试题命题比赛模拟试卷(13)含解析
- 福建省三明市梅列区梅列、永安2026届初三一诊模拟考试(一)化学试题含解析
- 2026年金融机构DCMM贯标实践:保险行业数据治理体系构建案例
- 2026年嫩肉糕感官评价IDDSI咀嚼等级质构性能持水性持油率指标优化
- 2026年泥水加压平衡盾构机穿越复杂地层施工
- 房地产经纪人业务经理的招聘全攻略
- 奇虎360服务器设备维护及工作部署安排
- 酒店业客房服务专员面试要点分析
- 微服务间通信策略
- JGJ31-2003 体育建筑设计规范
- 2024年河南省信阳市事业单位招聘考试(职业能力倾向测验)题库学生专用
- 农贸市场营销策划方案
- 【可行性报告】2023年高纯氮化铝粉体行业项目可行性分析报告
- 营养支持讲课最终课件
- 出口海运工厂集装箱货物绑扎加固指南
- 电动机检修作业指导书
- TS30测量机器人Geocom中文说明书
- 化工厂监控系统解决方案
- GB/T 3565.1-2022自行车安全要求第1部分:术语和定义
- GB/T 3452.4-2020液压气动用O形橡胶密封圈第4部分:抗挤压环(挡环)
评论
0/150
提交评论