显式游标使用的是select叙述,被声明于任何一个区块的声明段落中,开发者可以控制几乎所有与游标有关的操作。
显示游标对游标的处理提供了其他类似的游标无法做到的控制。他们要使用一次会传回多余一笔记录的select叙述。
虽然他们提供了比隐式游标更多的控制,但也需要额外的步骤来操作。
使用显式游标,需要进行四个步骤:
1.声明
2.开启
3.从cursor中取数据
4.关闭
开启:
游标会在区块的执行或者例外段落中被开启。open命令,准备好游标以供使用。游标中一次只可以有一笔作用中的记录。在开启时,作用中的记录是由游标的查询所传回的第一笔。
取数据:
fetch命令只会在目前记录上操作,并且会一次处理结果集中的一笔记录。
关闭:
一定要、绝对要关闭你的显式游标哦。
忘了关闭游标就等于是有意造成程式码中的记忆体泄漏。在关闭游标前,记忆体不会被释放。
当最后的区块结束时,oracle确实会去检查被遗忘的游标,而且它会在最外层区块结束时,自动关闭这些游标,但是,不要依赖这个来关闭你的游标。
写一句“closecursor_name;”不是很麻烦的事情!