【面/笔试题】oracle游标的分类、定义、使用?

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/debimeng/article/details/87652113

面试题:oracle游标的分类、定义、使用?

分类:静态游标和动态游标

(1)静态游标:显式游标和隐式游标;

定义:

隐式游标一般用于一次只从数据库中提取一行数据;

显式游标可用于一次从数据库中提取多行数据;

使用:

隐式游标:DML操作(insert/update/delete)和单行select...into...

显式游标:

四个步骤---

声明游标-cursor 游标名 is select...

打开游标-open 游标名

提取数据-(循环提取数据),如fetch 游标名 into 记录变量

关闭游标-close 游标名

(2)动态游标

如何使用REF游标 ?

①声明REF 游标类型,确定REF 游标类型;

⑴强类型REF游标:指定retrun type,REF 游标变量的类型必须和return type一致。

语法:Type REF游标名 IS Ref Cursor Return 结果集返回记录类型;

⑵弱类型REF游标:不指定return type,能和任何类型的CURSOR变量匹配,用于获取任何结果集。

语法:Type REF游标名 IS Ref Cursor;

②声明Ref 游标类型变量;

语法:变量名 已声明Ref 游标类型;

③打开REF游标,关联结果集 ;

语法:Open Ref 游标类型变量 For 查询语句返回结果集;

④获取记录,操作记录;

语法:Fatch REF游标名InTo 临时记录类型变量或属性类型变量列表;

⑤关闭游标,完全释放资源;

语法:Close REF游标名;

猜你喜欢

转载自blog.csdn.net/debimeng/article/details/87652113