数据库游标实验报告(共4页)

上传人:文**** 文档编号:51130465 上传时间:2022-01-24 格式:DOC 页数:4 大小:46KB
收藏 版权申诉 举报 下载
数据库游标实验报告(共4页)_第1页
第1页 / 共4页
数据库游标实验报告(共4页)_第2页
第2页 / 共4页
数据库游标实验报告(共4页)_第3页
第3页 / 共4页
资源描述:

《数据库游标实验报告(共4页)》由会员分享,可在线阅读,更多相关《数据库游标实验报告(共4页)(4页珍藏版)》请在装配图网上搜索。

1、精选优质文档-倾情为你奉上计算机系一、实验目的1、掌握创建游标的方法和步骤;2掌握游标的使用方法;二、实验内容1、游标的创建;2、游标的使用方法。三、实验步骤1、游标的创建。1)使用S_C数据库中的S表、C表、SC表创建一个存储过程sp_CURSOR1。该存储过程的作用是:显示所有的课程信息,如果成绩=90显示成绩本身;成绩=80显示良;成绩=70显示中;成绩=60显示及格;成绩=0显示不及格;如果没有成绩则显示无成绩。信息还包含学号,姓名,课程和成绩,显示格式如下:学号-姓名-课程-成绩,如图1所示。要求使用游标技术实现上述要求,使用Print语句实现显示。图1 成绩显示格式sp_CURSO

2、R1的创建语句:create proc sp_CURSOR1asDeclare sname varchar(50)Declare sno varchar(20)Declare cno varchar(20)Declare cname varchar(20)Declare grade varchar(20)Declare SCursor Cursor ForSelect sno,cno,grade From SCOpen SCursorFetch Next From SCursor Into sno,cno,gradeWhile FETCH_STATUS = 0beginselect sname

3、=sname From S where sno=snoselect cname=cname From C where cno=cnoif(grade = ) Print sno+sname+cname+nullelse if(grade = 90) Print sno+sname+cname+gradeelse if(grade =80)Print sno+sname+cname+良else if(grade =70)Print sno+sname+cname+中else if(grade =60)Print sno+sname+cname+及格else Print sno+sname+cna

4、me+不及格Fetch Next From SCursor Into sno,cno,gradeEndClose SCursorDeallocate Scursorgo结果描述:2、游标的使用。计算银行利息。有一储户账号为0001,银行存取记录如下:交易日期交易金额账户余额备注2010-10-011000010000开户存入2010-12-2020000300002011-02-03-5000250002011-05-01-3000220002011-10-10600028000存取记录数据表名为fundlist,字段名为id(编号,int),cid(储户账号,varchar(20)),ex-

5、date(交易日期,datetime),ex-money(交易金额,money),balance(账户余额,money)。根据有关规定,银行存款利息为:2011-04-01号之前(包括)为年利息2%,之后(不包括)为年利息3%,请用编写一个存储过程sp_cal_interest用来计算该储户的当前利息,要求利用游标实现。说明:当前用getdate()表示,年利息2%用存入的天数*2%/365表示利息。create proc sp_cal_interestasDeclare id intDeclare cid varchar(20)Declare ex_date datetimeDeclare

6、ex_money moneyDeclare balance moneyDeclare pre_ex_date datetimeDeclare pre_balance moneyDeclare result moneyDeclare SCursor Cursor ForSelect id,cid,ex_date,ex_money,balance From fundlistOpen SCursorFetch Next From SCursor Into id,cid,ex_date,ex_money,balanceset pre_ex_date=ex_dateset pre_balance=bal

7、anceset result=0While FETCH_STATUS = 0beginset pre_balance=pre_balance+resultif(ex_date=Cast(2011-04-01 as datetime)beginset result=pre_balance*(datediff(day,pre_ex_date,ex_date)*2/36500endelsebeginif(pre_ex_date=Cast(2011-04-01 as datetime)beginset result=pre_balance*(datediff(day,pre_ex_date,Cast(

8、2011-04-01 as datetime)*2/36500+pre_balance*(datediff(day,Cast(2011-04-01 as datetime),ex_date)*3/36500endelsebeginset result=pre_balance*(datediff(day,pre_ex_date,ex_date)*3/36500endendset pre_ex_date=ex_dateset pre_balance=balanceFetch Next From SCursor Into id,cid,ex_date,ex_money,balanceEndprint resultClose SCursorDeallocate Scursorgo四、实验总结在数据库中,游标是一个十分重要的概念。游标提供了一种对从表中检索出的数据进行操作的灵活手段,就本质而言,游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。了解游标的使用方法范围,能够使用存储过程创建游标。知道了游标的运行规则,能够使用游标达到一次处理数据即得到结果或更新数据,防止不同规则更新时导致数据重复更新。专心-专注-专业

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!