在存储过程的处理中,如果遇到对一张表的数据遍历,我们通常会使用游标进行。
但是,根据程序的执行效果来看,游标存在以下问题:
①游标是存放在内存中,很费内存。游标一建立,就将相关的记录锁住,直到取消游标。
对于多表和大表中定义的游标(大的数据集合)循环很容易使程序进入一个漫长的等待
甚至死机。
②游标一般根据状态位来判断记录是否全部读取完毕,而状态位@@fetch_status是一
个全局的变量。如果两个或多个游标同时执行(例如都含有游标的两个存储过程并发),
则会出现很诡异的问题。
★总的来说,能使用其他方式处理数据时,最好不要使用游标。