DECLARE Dept_cur CURSOR FOR --定义游标
SELECT DeptID,CDeptName,Curk,Park FROM Dept where IsDelete=0
OPEN Dept_cur --打开游标
FETCH Dept_cur INTO @DeptID,@CDeptName,@Curk,@Park
WHILE @@FETCH_STATUS = 0
BEGIN
--处理
FETCH Dept_cur INTO @DeptID,@CDeptName,@Curk,@Park --循环
END
CLOSE Dept_cur --关闭游标
DEALLOCATE Dept_cur --销毁游标
SELECT DeptID,CDeptName,Curk,Park FROM Dept where IsDelete=0
OPEN Dept_cur --打开游标
FETCH Dept_cur INTO @DeptID,@CDeptName,@Curk,@Park
WHILE @@FETCH_STATUS = 0
BEGIN
--处理
FETCH Dept_cur INTO @DeptID,@CDeptName,@Curk,@Park --循环
END
CLOSE Dept_cur --关闭游标
DEALLOCATE Dept_cur --销毁游标
返回被 FETCH 语句执行的最后游标的状态,而不是任何当前被连接打开的游标的状态。返回值 描述
0 FETCH 语句成功。
-1 FETCH 语句失败或此行不在结果集中。
-2 被提取的行不存在。
SELECT DeptID,CDeptName,Curk,Park FROM Dept where IsDelete=0
OPEN Dept_cur --打开游标
FETCH Dept_cur INTO @DeptID,@CDeptName,@Curk,@Park
WHILE @@FETCH_STATUS = 0SELECT DeptID,CDeptName,Curk,Park FROM Dept where IsDelete=0
这里取出值 然后 OPEN Dept_cur --打开游标
FETCH Dept_cur INTO @DeptID,@CDeptName,@Curk,@Park
这里打开游标 并且游标开始指向数据
然后才是 WHILE @@FETCH_STATUS = 0这个判断啊 这样不就是说此时已经是0 FETCH 语句成功了么? 这个时候才是0是因为游标已经开始工作了 此时的值已经 不是初始值了吧??? 我是这么理解的. 请指点迷津啊 谢谢 还希望DX 能给详细解答下 万分感谢