ORACLE游标的创建与应用.ppt

ORACLE游标的创建与应用.ppt

ID:62010891

大小:1.04 MB

页数:39页

时间:2021-04-12

ORACLE游标的创建与应用.ppt_第1页
ORACLE游标的创建与应用.ppt_第2页
ORACLE游标的创建与应用.ppt_第3页
ORACLE游标的创建与应用.ppt_第4页
ORACLE游标的创建与应用.ppt_第5页
资源描述:

《ORACLE游标的创建与应用.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、7.1游标的创建与应用经1106徐晓硕学号201111891.游标的概念2.显式游标3.带参数的游标4.隐式游标1.游标的概念背景由来当SELECT语句在PL/SQL程序块中使用时,要求查询结果中只能包含一条记录,若查询出来的数据多于一行,则执行出错。这时候就需要用到游标。1.游标的概念Oracle游标的概念游标是ORACLE系统在内存中开辟的一个工作区,在其中存放SELECT语句返回的查询结果。这个查询结果既可以是零记录,单条记录,也可以是多条记录.在游标所定义的工作区中,存在着一个指针(POINTER),在初始状态它指向查询结果的首记录.1.游标的概念Oracle游标的类

2、型①隐式游标:是oracle为所有数据操纵语句(包括只返回单行数据的查询语句)自动声明和操作的一种游标(名字是sql)。②显式游标:用户显示声明的游标,即指定结果集。当查询返回结果超过一行时,就需要一个显式游标。2.显式游标显式游标的使用过程1.定义游标2.打开游标3.提取游标4.处理数据5.关闭游标1.定义游标语法:CURSOR游标名ISSELECT语句;例子:CURSORc1ISSELECT*FROMemp;2.打开游标语法:OPEN游标名;例子:OPENc1;3.提取数据游标被打开后,使用FETCH语句获取游标正在指向的结果集中的记录,语句执行后游标的指针自动下移,指向

3、下一条记录。每执行一次FETCH语句,游标只获取一行记录。3.提取数据语法:FETCH游标名INTO变量名;例子:FETCHc1INTOemp_rec;其中emp_rec是已定义好的和emp结构相同的记录变量。4.处理数据上一步已经将游标指向的当期行记录通过FETCH语句提取出来并放到变量(emp_rec)中,接下来就可以对这些变量中的数据进行处理了。例:将emp_rec中的数据输出dbms_output.put_line(‘姓名是:’

4、

5、emp_rec.ename);5.关闭游标语法:CLOSE游标名;例子:CLOSEc1;首先创建一个表查看表中的信息游标的声明与使用游标的

6、声明与使用每执行一次FETCH语句,游标只获取一行记录5次FETCH操作游标的声明与使用FETCH语句指向最后记录,将不再移动6次FETCH操作2.显式游标游标的常用属性1.%ISOPEN属性2.%FOUND属性3.%NOTFOUND属性4.%ROWCOUNT属性1.%ISOPEN属性判断游标是否打开。打开返回值为TURE,未打开返回值为FALSE。语法:游标名%ISOPEN;例子:IFc1%ISOPENTHEN…;2.%FOUND属性判断游标是否从结果集中取到数据。取到返回值为TURE,未取到返回值为FALSE。语法:游标名%FOUND;例子:IFc1%FOUNDTHEN…

7、;3.%NOTFOUND属性与%FOUND相反。未取到数据返回值为TURE,取到数据返回值为FALSE。语法:游标名%NOTFOUND;例子:IFc1%NOTFOUNDTHEN…;4.%ROWCOUNT属性表示游标从查询结果集中已经获取到的记录总数。语法:游标名%ROWCOUNT;例子:FETCHc1INTOemp_rec;IFc1%ROWCOUNT>10THEN…;2.显式游标显式游标的循环1.游标的LOOP循环2.游标的FOR循环1.游标的LOOP循环语法:LOOPFETCH游标名INTO变量名;EXIT WHEN游标名%NOTFOUND;END LOOP;LOOP循环中

8、的FETCH语句重复执行,当FETCH语句不能从游标的当前行取出数据时,循环结束。游标的声明与使用2.游标的FOR循环语法:FOR变量名IN游标名LOOP数据处理语句;ENDLOOP;2.游标的FOR循环特点:FOR循环中循环控制变量不需要事先定义FOR循环之前,系统能自动打开游标;循环结束后,系统自动关闭游标。FOR循环过程中,自动执行FETCH语句。3.带参数的游标背景由来在前面介绍游标的例子中,SELECT语句都没有WHERE子句,或者用WHERE子句指定了一个固定的条件,这样每次都查询同样的数据。在更多的情况下,可能要根据实际情况查询不同的数据。要怎么办?3.带参数的

9、游标背景由来为了通过游标对数据进行更加灵活的处理,可以为游标定义参数,这些参数可以用在WHERE子句中。在打开游标时,指定实际的参数值,这样游标在每次打开时,可以根据不同的实际参数值,返回所需的不同数据。3.带参数的游标定义格式语法:CURSOR游标名(参数名数据类型[DEFAULT默认值])ISSELECT语句;参数需要指明参数名及其数据类型。参数只定义数据类型,没有大小。可以给参数设定一个缺省值,当没有参数值传递给游标时,就使用缺省值。4.隐式游标背景由来DML操作和单行SELECT语句会使用隐式游

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。