30分求关闭游标问题!

liyanmingkong 2007-12-17 10:10:55
sqlserver 关闭游标的时候,用判断该游标是否打开吗,怎么写啊!
...全文
76 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
-狙击手- 2007-12-17
  • 打赏
  • 举报
回复
联系帮助输入@@
areswang 2007-12-17
  • 打赏
  • 举报
回复
查联机丛书
liyanmingkong 2007-12-17
  • 打赏
  • 举报
回复
象@@CURSOR_ROWS这种系统变量,在哪里可以查到其相关的知识呢?
shirley_yue 2007-12-17
  • 打赏
  • 举报
回复
CLOSE 游标名
DEALLOCATE 游标名
fa_ge 2007-12-17
  • 打赏
  • 举报
回复
在oracle中,用 遊標名%isopen
areswang 2007-12-17
  • 打赏
  • 举报
回复
示例
下面的示例声明了一个游标,并且用 SELECT 显示 @@CURSOR_ROWS 的值。在游标打开前,设置值为 0,值 -1 则表示游标键集被异步填充。

SELECT @@CURSOR_ROWS
DECLARE authors_cursor CURSOR FOR
SELECT au_lname FROM authors
OPEN authors_cursor
FETCH NEXT FROM authors_cursor
SELECT @@CURSOR_ROWS
CLOSE authors_cursor
DEALLOCATE authors_cursor

-----------
0

(1 row(s) affected)

au_lname
----------------------------------------
White

(1 row(s) affected)


-----------
-1

(1 row(s) affected)

areswang 2007-12-17
  • 打赏
  • 举报
回复
一般是不用的,具体看你自己操作了。
如果要判断,方法如下:
用@@CURSOR_ROWS判断游标是否打开
@@CURSOR_ROWS
-m 游标被异步填充。返回值 (-m) 是键集中当前的行数。
-1 游标为动态。因为动态游标可反映所有更改,所以符合游标的行数不断变化。因而永远不能确定地说所有符合条件的行均已检索到。
0 没有被打开的游标,没有符合最后打开的游标的行,或最后打开的游标已被关闭或被释放。
n 游标已完全填充。返回值 (n) 是在游标中的总行数。

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧