标签:
为什么要学习游标呢? 因为sql查询的结果集记录数补不定,很难用变量来表示。 而游标可以一次性读取一个记录集合,可以按过程来访问结果集
--游标的基本原理 dml,包括insert,select,update操作结果缓冲区。而游标呢,是指向该去的一个指针。可以针对每一行的结果进行处理,访问。是实际嵌入式sql语句的应用程序最常用编程方式
---游标的类别 按类型分为静态和动态游标。 静态是指当执行一条语句的时候,默认绑定的游标。而动态是只程序运行时才绑定的游标。
静态游标又可以分为隐式游标和显示游标。 动态游标可以分为强类型和弱类型。强类型是指定义的类型必须跟查询的结果相同。而弱类型则支持所有类型
---游标的使用 -----申明游标,打开游标,使用游标,关闭游标 cursor <游标名> is select<语句> --申明游标 open<游标名> --打开游标 fecth <游标名> into <变量列表> --使用游标 使用显示游标时,一定要关闭游标,不关闭的话,就会占用系统资源。 close <游标名>
--游标的属性 是否打开 %isopen 是否可以读取下一行 %found 如果有则返回true 是否不可以读取,读完了 %notfound 如果真的没有,就返回true 抽取过的行数 %rowcount 使用方法 游标名%属性名
使用循环简化游标的读取 for<类型>in <游标名>loop ---操作各行数据 end loop;
动态游标 事先没有绑定,而是运行的时候才绑定的 --申明类型 type typea1(类型名) is ref cursor return 表名%rowtype; --返回指定类型 --申明动态游标 youbiao typea1; begin
标签:
原文地址:http://www.cnblogs.com/xiaobaixiaocai/p/4223426.html