第8章 数据库应用系统设计实例习题解答(3)

2020-02-21 18:36

%>

【删除】

主要用到request对象的session数据集合来获取searchuser与class的值。这里涉及到三张表:student,class,grade。通过rs.delete,rs.update达到实现效果。 主要代码与解释: <% dim stu

stu=\grade.* FROM grade INNER JOIN student ON student.学号 = grade.学号

INNER JOIN class ON grade.课程号= class.课程号 WHERE student.学生名= '\课程名 = '\ Set conn = GetSQLServerConnection( \ Set rs = GetSQLServerStaticRecordset(conn, stu) if not rs.eof then rs.delete rs.update %>

***/通过对象session中的变量searchuser与class传递,找到合乎该条件的记录,如果存在,那么就用rs.delete删除,接着用rs.update刷新数据库中的记录集。完成该项删除工作。/***

课程管理:

本系统合理安排选修课课程是学生能选好选课的前期。这一操作由管理员来担任。管理员能动态开设选修课,根据学生选课意向可以增设受学生青睐的课程,对一些学生感兴趣的课程,由于报名人数众多,可以适当的调整上课地点,以满足广大学生的需要。而对于那些在学生中没多大“市场”的课程,为节省教学设备资源,可以换用小教室开设,如此一来既放弃小数有热情学习该课程的学生,又能将大场地给予对其它课程有热情的更多的学生。 课程管理首页中部分主要代码: <%

dim stu

stu=\

Set conn = GetSQLServerConnection( \Set rs = GetSQLServerStaticRecordset(conn, stu) %>

***/打开class表,下面所有操作需要在这表中进行/***

174

***/该页面上提供了直接【增加课程】功能,只要在上面点击,就连接到【增加课程】的操作页面上,操作十分直观。/*** <%

For i=0 to rs.Fields.Count-1

Response.Write \ Next

Response.Write \【删除】【删除】\while not rs.eof

response.Write \ For i=0 to rs.Fields.Count-1 response.Write \response.Write rs(i) response.Write \next %>

***/如果打开的class表中有记录,那么先循环打印该表中所有的字段作为表头,按行从左到右打印。表中的字段打印完必后,再在添加上【删除】与【修改】完善表头。/***

<%

rs.movenext wend %>

***/然后,在按数据库表中的对应内容同样通过循环的方式打印,并且在每一行中添加【删除】【修改】,对此【删除】【修改】使用链接,使用户操作极其容易。/*** 【增加】

本页面在设计时对于添加的像“任课老师”、“教师号”均是动态的。可以通过下拉菜单来选择可选的任课老师和对应的教师号,这样既提高操作速度,又不会造成数据错误。 <% dim stu,stu2 Set conn = GetSQLServerConnection( \ stu=\任课老师 FROM teacher\ Set rs = GetSQLServerStaticRecordset(conn, stu) stu2=\教师号 FROM teacher\ Set rs2 = GetSQLServerStaticRecordset(conn, stu2) %>

***/打开含有存储任课老师和教师号的表:teacher, 以便在下拉菜单中做选择。/***

175

<%

while not rs2.eof

response.write \response.write rs2(0)

response.write \rs2.movenext wend %>

***/将teacher表中的字段为“教师号”所对应的值传递给

***/将要增加的内容输入完毕后,发送表单到\实现对增加的效果。/*** 处理增加页面主要代码: <%

Set conn = GetSQLServerConnection( \Set rs = GetSQLServerStaticRecordset(conn, \if request(\rs.addnew

rs(0)=request(\课程号\ ………………………. ………………………. ……………………….

rs(11)=request(\课程介绍\rs.update end if %>

***/此程式通过用request对象中的form数据集合来从用户端获取用户输入的内容如课程号,课程名,任课老师……等等在表class中有的字段,然后用rs.addnew将上个页面所增设内容

176

添加到表class中/*** 【修改】

课程修改功能主要用到request对象的querystring数据集合来获取“课程号”,来进行值传递。“课程号”是唯一的,因此用它来索引记录集,在del_setgrade.asp页面上实现对表class中值的修改。

主要代码及部分解释: <%

dim str str=\课程号 = '\课程号\ Set conn = GetSQLServerConnection( \ Set rs = GetSQLServerStaticRecordset(conn, str)

***/通过request(“课程号”)传递值,打开对应的记录集。/*** if rs.eof then response.write \华文行楷>修改失败\***/如果该记录集为空,显示“修改失败”。/***

else rs(0)=request(\课程号\ ………………………..

……………………….. ……………………….. rs(11)=request(\课程介绍\ rs.update response.write \华文行楷>修改成功\ response.redirect(\ end if %>

***/如果有记录集,那么通过request将“课程号”、“课程名”、\教师号\、\任课老师\、\所属系\、\开课时间\、\开课时间\、\结束时间\、\课时\、\学分\、\限招人数\、\已招人数\、\课程介绍\等都传递给class表中相对应的值。并且用rs.update做一下刷新,数据库中的数据被更新。/*** 【删除】

主要用到request对象传递classnum的值。通过rs.delete,rs.update使表class实现删除效果。 主要代码与解释: <% dim str str=\课程号 = '\ Set conn = GetSQLServerConnection( \ Set rs = GetSQLServerStaticRecordset(conn, str) if rs.eof then

177

response.Write(\删除不成功\ else rs.delete rs.update %>


<% end if %>

***/通过对象request中的变量classnum(指课程号)传递值,找到合乎该条件的记录,如果存在,那么就用rs.delete对该记录做删除,接着用rs.update刷新数据库中的记录集,并在页面上显示:删除成功,完成该项删除工作。如果不存在,那么显示:删除不成功。/***

178


第8章 数据库应用系统设计实例习题解答(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: