读书人

关于使用游标,该如何处理

发布时间: 2012-09-19 13:43:53 作者: rapoo

关于使用游标
通常使用游标总是这样写代码:

DECLARE Employee_Cursor CURSOR FOR
SELECT LastName, FirstName FROM Northwind.dbo.Employees
OPEN Employee_Cursor
FETCH NEXT FROM Employee_Cursor
WHILE @@FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM Employee_Cursor
END
CLOSE Employee_Cursor
DEALLOCATE Employee_Cursor

如何判断游标所指的结果集里有有效数据呢?使用@@fetch_status吗?通常怎样搭配?

[解决办法]
@@fetch_status只是判断游标的运行状态而已,不保证有数据,如果你要判断有没有数据,最好使用if exists(select 1 from 表where 条件)这类型的判断。

读书人网 >SQL Server

热点推荐