第8章数据库应用系统设计实例习题解答.doc

上传人:坚持 文档编号:3443517 上传时间:2019-05-30 格式:DOC 页数:15 大小:86KB
下载 相关 举报
第8章数据库应用系统设计实例习题解答.doc_第1页
第1页 / 共15页
第8章数据库应用系统设计实例习题解答.doc_第2页
第2页 / 共15页
第8章数据库应用系统设计实例习题解答.doc_第3页
第3页 / 共15页
第8章数据库应用系统设计实例习题解答.doc_第4页
第4页 / 共15页
第8章数据库应用系统设计实例习题解答.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、第 8 章 数据库应用系统设计实例习题解答一. 简答题1、 试述瀑布模型和原型模型的优缺点? 瀑布模型(Waterfall Model)1970年 WinSTon Royce提出了著名的“瀑布模型“,直到 80年代早期,它一直是唯一被广泛采用的软件开发模型。瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。在瀑布模型中,软件开发的各项活动严格按照线性方式进行,当前活动接受上一项活动的工作结果,实施完成所需的工作内容。当前活动的工作结果需要进行验证,如果验证通过,则该结果作为下

2、一项活动的输入,继续进行下一项活动,否则返回修改。瀑布模型强调文档的作用,并要求每个阶段都要仔细验证。但是,这种模型的线性过程太理想化,已不再适合现代的软件开发模式,几乎被业界抛弃,其主要问题在于:(1) 各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量;(2) 由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险;(3) 早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客

3、户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。显然,快速原型方法可以克服瀑布模型的缺点,减少由于软件需求不明确带来的开发风险,具有显著的效果。快速原型的关键在于尽可能快速地建造出软件原型,一旦确定了客户的真正需求,所建造的原型将被丢弃。因此,原型系统的内部结构并不重要,重要的是必须迅速建立原型,随之迅速修改原型,以反映客户的需求。瀑布模型采用文档驱动,系统可能不满足客户的需求。快速原型模型关注满足客户需求,可能导致系统设计差、效率低,难于维护。2、 简述客户/服务器应用系统的开发过程?1) 对应用系统进行分析,完成客户和服务器的功能划分2) 架

4、设服务器3) 选择客户端开发工具和客户服务器连接中间件4) 开发应用系统3、 简述浏览器/服务器应用系统的开发过程?11) 规划 Web站点2) 安装 Web服务器3) 构建或虚拟网络环境4) 开发 Web站点5) 发布 Web站点二选择题1、软件工程的出现主要是由于 C 。(A)程序方法学的影响 (B)其他工程科学影响(C)软件危机的出现 (D)计算机的发展2、需求分析系统分析员和用户共同确定软件的功能和限制,提出 A 、 B 、 C 。(A)可行性研究报告 (B)数据字典(C)系统功能说明书 (D)实施方案3、瀑布模型是一种 B 。(A)软件维护模型 (B)软件生命期模型(C)软件生命周期

5、 (D)程序设计方法学4、软件测试的目的是 B 。(A)改正错误 (B)发现错误(C)推断错误原因 (D)修改程序5、数据流图是用于 C 阶段的工具?(A)可行性分析 (B)详细设计(C)需求分析 (D)程序编码6、软件生命周期中,用户参与主要在 A 。(A)软件定义期 (B)软件开发期(C)软件维护期 (D)整个软件生命周期过程中7、在软件工程方法中,常使用的两种软件开发模型是瀑布模型和原型模型,这两者的差别和联系有: A 。(1)前提和假设不同(2)方法相互补充(3)方法相互排斥(4)前提和假设相同试给出最正确的组合结论选择(A) (1) 、 (2) (B) (4) 、 (3)2(C) (

6、4) 、 (2) (D) (1) 、 (3)三应用题1、 参考本章宾馆信息管理系统的分析和设计过程,分析并设计一个高校人事管理系统,具备人员入校 (毕业分配、调入等) 、出校(调出、退体等) 、基本情况查询和报表打印等功能。毕业生调入人员信息录入人事档案人事处审核退休处理调离退休人员调离人员查询打印职工号 char(10) not null primary key姓名 varchar(20) not null 性别 char(2) 民族 varchar(20) 出生日期 datetime 身份证号 char(18) not null 籍贯 varchar(20) 政治面貌 varchar(20

7、) 毕业院校 varchar(50) 所学专业 varchar(50) 毕业时间 datetime 最高学历 varchar(20) 最高学位 varchar(20) 调入时间 datetime 调离时间 datetime 退休时间 datetime 32、 参考本章图书网上销售系统的分析和设计过程,分析并设计一个全校选修课报名管理系统。1 nM nN m1) 管理员(admin):在 admin 表中存放管理员信息。2)课程信息表(class):在 class 表中存放与课程内容相关的信息。3)选课记录表(grade):在 grade 表中存储每一名学生选课记录。4)学生信息表(studen

8、t):在 student 表中存放学生个人信息。5)教师表(teacher):在 teacher 表中存放教师个人信息。公共函数创建数据库连接(Connection) :本系统先建立一个连接数据库的函数文件,然后再调用此文件,以方便在各个页面中的实现对数据库的访问。链接用以保持一些关于正在访问的数据的一些状态信息,以及链接者信息。ASP 文件中如果要访问数据,必须首先创建与数据库的链接的函数,其语法如下:讲 授指 导学号学生名password班级系别学生所属系联系方式教 师教师号任课老师password选 修选修课所属系 限招人数任课老师 学分教师号课时课程号已招人数开课时间结束时间课程介绍课

9、程名4Function GetSQLServerConnection( Computer, UserID, Password, Db )Dim Params, connSet GetSQLServerConnection = NothingParams = “Provider=SQLOLEDB.1“Params = Params Data Source=“ User ID=“ Password=“ Initial Catalog=“ & DbSet conn = Server.CreateObject(“ADODB.Connection“)conn.Open ParamsSet GetSQLS

10、erverConnection = connEnd Function此函数创建了链接对象 Conn,打开链接,为“Params ”。创建数据对象(RecordSet)ADO 中的数据对象通常保存的是查询结果。RecordSet 是 ADO 中最复杂的对象,有许多属性和方法。RecordSet 保存的是一行行的记录,并标有一个当前记录。以下是创建函数:Function GetSQLServerRecordset( conn, source )Dim rsSet rs = Server.CreateObject(“ADODB.Recordset“)rs.Open source, conn, 2,

11、2Set GetSQLServerRecordset = rsEnd FunctionFunction GetSQLServerStaticRecordset( conn, source )Dim rsSet rs = Server.CreateObject(“ADODB.Recordset“)rs.Open source, conn, 3, 2Set GetSQLServerStaticRecordset = rsEnd Function其中 set rs=server.CreateObject(“adodb.recordset“)这条语句创建了对象 RecordSet, rs 是一个字串,

12、代表一条标准的 SQL 语句。例如:set rs=conn.Execute(“select * from grade“)其中 Conn 是先前创建的链接对象,这条语句执行后,对象 RecordSet 中就保存了表 grade 中的所有记录。操作数据库通过调用链接对象的 Execute 方法来将查询结果返回给一个数据对象或进行添加、删除等操作。例如:5sql=“insert into student(“学号”) values(“&request.form(“学号“)&“)“conn.execute(sql) */执行添加操作sql=“delete from student where “学号”=

13、“&request.querystring(“学号“)conn.execute(sql) */执行删除操作关闭数据对象和链接对象在使用了 ADO 对象之后要关闭它,因为它使用了一定的服务器资源。通过调用函数文件实现关闭,然后再释放它。Function GetSQLServerRs( Computer, UserID, Password, Db, source, Cursor )Dim conn, rsOn Error Resume NextSet GetSQLServerRs = NothingSet conn = GetSQLServerConnection( Computer, UserI

14、D, Password, Db )If conn Is Nothing Then Exit FunctionSet rs = Server.CreateObject(“ADODB.Recordset“)If Err.Number 0 Then Exit FunctionSet GetSQLServerRs = rsEnd Function */关闭创建的数据对象及链接对象 /*模块详解登录分析:Empty and (request(“id“)=“ or request(“password“)=“) thenresponse.write“请输入密码或用户名“else If Request(“su

15、bmit“) */如果当学生用户输入相关登录身份时,连接数据库,并打开 student 表 /*“session(“id“)=rs(2) */并且把 rs(2)中对应的内容传递给对象(session(“id”) ) , 在下面页面跳转中该变量不会改变。/*Else response.write“用户名错误或密码错误“ */否则登录失败/*end if %开课情况与选课内容分析:true then sql=“select * from grade where 学号=“&session(“id“)&“set rs5 =server.CreateObject(“adodb.recordset“)rs

16、5.open sql,conn,1,1 */根据学生登录身份,打开该学生的选课记录表/* i=rs5.recordcountif i=5 then % */判断记录集是否超过 5 条/*/若大于 5,不能再选修课程了 /*MsgBox “你已修满课程 ,不能再修了!“ history.back() =rs(2) then */当前选课时间要符合开课时间和结束选课时间的要求。/*if rs(0)“ */然后,显示“选课成功” ,并提示你已有几条选response.write “ 你已选了“ 课记录。/*response.Write“&i+1&“response.write “ 门课“respon

17、se.write “返回 “else %MsgBox “你来迟哦,已错过选课时间!“history.back() */否则一一提示没能成功选课的理由,让用户容易明白失败的原因,这在script language=“vbscript“ 代码中能直接反应,这里不做解释/*MsgBox “对不起,该课程已报满!“history.back() MsgBox “你早到啦,还没开始选课呢!“history.back() 你已经选了这门课返“end ifend ifend if %选课记录:“ & rs3(i).Name & “Nextwhile not rs3.eof */ 根据 session(“id“

18、)的传递,在学生选课记录表中找出对应的response.Write “ 记录集,并通过循环的方式在页面中显示数据库的内容: 8response.Write rs3(0) 学生名,课程名,课程号,班级,系别等/*.response.Write “ response.Write rs3(4)response.Write “ %rs3.movenextwend %学生报名管理:“response.Write “对不起暂时还没有学生选你的课程如有意见请跟管理员联系“response.write “elsesession(“class“)=rs(1)% */通过 student 表中的学号与 grade

19、 表中的学号连接使得 student 表与 grade 表相连,同时grade 表中的课程号与 class 表中的课程号连接使得 grade 表与 class 表相连。然后,又通过session 的变量“teacher”传递登录教师名。打开符合上述几个条件的记录集,如果找不到与上述几条相符的记录集,那么显示“对不起暂时还没有学生选你的课程如有意见请跟管理员联系”/*“ & rs(i).Name & “NextResponse.Write “【删除此学生 】【打印】“while not rs.eof response.Write “ */ 用循环的方式将对应的记集在页面中显示出来,9并且在res

20、ponse.Write rs(0) 每一条记录后增加【删除此学生】与【打印】的链接/*response.Write rs(3)response.Write “%rs.movenextwend%【打印】此功能本系统中巧妙的运用了 ASP 中调用 word 打印语句实现打印功能。这一设计简单又有效。*/通过用 SQL 内联语句找出符合打印的的记录集,然后调用 ASP 中通过连接 word 打印的语句准备打印。/*“ & rs(i).Name & “Nextwhile not rs.eof response.Write “response.Write rs(0). */在 WORD 页面中,通过用循环打印的方式,将符合条件的记录. 集打印出来/*.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 试题真题

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。