关于数据库游标的例子
来源:互联网 发布:准确的日语翻译软件 编辑:程序博客网 时间:2024/06/06 21:06
declare @tableName nvarchar(100),@tbID int
declare cur cursor for--创建游标
select name,id from sysobjects where xtype= 'U'
open cur --打开游标
print '行数:'+convert(nvarchar(4),@@CURSOR_ROWS )
print '表名 表ID '
fetch next from cur into @tableName,@tbID--fetch....into 使用游标
while @@fetch_status=0
begin
print @tableName+' '+convert(nvarchar(20),@tbID)
fetch next from cur into @tableName,@tbID
end
close cur --关闭游标
deallocate cur--释放,卸载游标(若下次使用要重新声明)
-----------------------------结果------------------------
行数:-1
表名 表ID
tb 21575115
a表 69575286
b表 85575343
sysdiagrams 213575799
temp 373576369
Table_1 2073058421
----------------------------------------------------------
这个是游标的例子,参考SqlServer联机丛书
@@CURSOR_ROWS在open之后执行,返回为查询的行数
但上面结果为“行数:-1”
发现其中原因为cursor类型不正确,该游标为动态游标。因为动态游标可反映所有更改,所以游标符合条件的行数不断变化。因此,永远不能确定已检索到所有符合条件的行。
---------------------------参考-----------------------------
-m
游标被异步填充。返回值 (-m) 是键集中当前的行数。
-1
游标为动态游标。因为动态游标可反映所有更改,所以游标符合条件的行数不断变化。因此,永远不能确定已检索到所有符合条件的行。
0
没有已打开的游标,对于上一个打开的游标没有符合条件的行,或上一个打开的游标已被关闭或被释放。
n
游标已完全填充。返回值 (n) 是游标中的总行数。
------------------------------------------------------------
可修改为如下两种cursor方式
declare cur cursor scroll for........
declare cur cursor static for........
修改后正确结果为
-----------------------------结果------------------------
行数:6
表名 表ID
tb 21575115
a表 69575286
b表 85575343
sysdiagrams 213575799
temp 373576369
Table_1 2073058421
----------------------------------------------------------
- 关于数据库游标的例子
- postgresql数据库的游标使用例子说明
- 关于mysql游标的一个例子
- 关于数据库的游标(cursor)。
- 关于oracle中动态游标的使用例子ref cursor
- 游标的例子
- 游标的简单例子
- 游标的小例子
- 游标的简单例子
- Sqlserver 游标的例子
- sql关于游标和游标、存储过程结合的一个例子
- sql关于游标和游标、存储过程结合的一个例子
- oracle数据库中关于游标的常见用法
- 一个嵌套游标的例子
- SqlServer 游标的小例子
- sql 游标简单的例子
- 参数游标的简单例子
- oracle的游标和例子
- ASP.NET MVC 1.0发布
- Enterprise Library 4.1和 Unity 1.2动手实验
- 申请成功Azure帐号开始学习Azure云计算
- 介绍ORACLE DATA GUARD
- 文本模板转换工具箱T4
- 关于数据库游标的例子
- 在Vista安装SQL 2008 Express遭遇属性不匹配错误解决办法
- asp.net mvc 的异常处理解决方案
- 加密算法(三)——【MD5算法实现过程分析】
- ASP.NET MVC免费电子书教程
- asp.net mvc validation framework -xVal
- Silverlight + Model-View-ViewModel (MVVM)
- 使用Mono管理Coyote Linux
- WPF/Silverlight的UI和逻辑完全分离