游标是 SQL 的一个内存工作区,由系统或用户以变量的形式定义。游标的作用就是
用于临时存储从数据库中提取的数据块。在某些情况下,需要把数据从存放在磁盘的表
中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库。这样数据
处理的速度才会提高,否则频繁的磁盘数据交换会降低效率。
游标有两种类型:显式游标和隐式游标,在前述程序中用到的 SELECT…INTO…查询
语句,一次只能从数据库中提取一行数据,对于这种形式的查询和 DML 操作,系统都会
使用一个隐式游标。但是如果要提取多行数据,就要由程序员定义一个显式游标,并通
过与游标有关的语句进行处理。显式游标对应一个返回结果为多行多列的 SELECT 语句。
游标一旦打开,数据就从数据库中传送到游标变量中,然后应用程序再从游标变量
中分解出需要的数据,并进行处理。
Oracle游标
好处:1。减少网络流量 2。可以实现遍历 3。直接利用游标更新数据,直接引用表中的行
3,为什么避免使用游标?
①在创建游标时,最需要考虑的事情是,“是否有办法避免使用游标?”
因为游标的效率较差,如果游标操作的数据超过1万行,那么就应该改写;
如果使用了游标,就要尽量避免在游标循环中再进行表连接的操作。