天天看点

最好不要使用游标

在存储过程的处理中,如果遇到对一张表的数据遍历,我们通常会使用游标进行。

但是,根据程序的执行效果来看,游标存在以下问题:

①游标是存放在内存中,很费内存。游标一建立,就将相关的记录锁住,直到取消游标。

对于多表和大表中定义的游标(大的数据集合)循环很容易使程序进入一个漫长的等待

甚至死机。

②游标一般根据状态位来判断记录是否全部读取完毕,而状态位@@fetch_status是一

个全局的变量。如果两个或多个游标同时执行(例如都含有游标的两个存储过程并发),

则会出现很诡异的问题。

★总的来说,能使用其他方式处理数据时,最好不要使用游标。