sqlserver - SQL 存储过程 游标的问题
本文介绍了sqlserver - SQL 存储过程 游标的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
--我写了个简单的存储过程、但执行出来是个死循环、一直在查询
--我明明有关闭游标和摧毁它
ALTER PROCEDURE [dbo].[GetClsTypeId]
AS
begin
declare @Tree varchar(500)
--创建游标
declare TypeId_cursor cursor for select [Tree] from [3d_Customer_Cymb] where Mark=0 and ParentId=0 and FangXinId=1
open TypeId_cursor
fetch next from TypeId_cursor into @Tree
while @@fetch_status=0
begin
select * from [3d_Customer_Cymb] where Tree LIKE '%'+@Tree+'%' and ParentId <>0
end
close TypeId_cursor
deallocate Type_cursor
end
解决方案
--本人已解决、在游标循环while内少写了一句
fetch next from TypeId_cursor into @Tree
--将游标拨向下一个、不然就会一直查询一条、形成死循环
这篇关于sqlserver - SQL 存储过程 游标的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文