前两天一个同事大叔问了这样一个问题,他要对表做个类似foreach的效果,问我怎么搞。我想了想,就拿游标回答他,当时事实上也没用过数据库中的游标,可是曾经用过ADO里面的,感觉应该几乎相同。

今天闲下来,百度下,做了个关于游标的小DEMO:

首先,让我们先来建张測试表:

USE LoadTest2010

CREATE TABLE testCursor /*创建測试表*/
( id INT,
name VARCHAR(50) ) --插入測试数据
INSERT INTO testCursor VALUES(1,'lhc')
INSERT INTO testCursor VALUES(2,'jay')

接着。我们使用游标对这张表进行一个循环的操作:

--首先定义暂时存储数据的变量,以供游标移动时当作Temp用
DECLARE @id INT
DECLARE @name VARCHAR(50) DECLARE cursorTest CURSOR FOR --定义游标
SELECT * FROM testCursor --定义使用游标的表 OPEN cursorTest --打开游标 FETCH NEXT FROM cursorTest INTO @id,@name --将游标向下移动一行,获取的数据放入之前定义的变量中 WHILE @@FETCH_STATUS=0 --推断是否成功获取数据 BEGIN
UPDATE testCursor SET name=name+'1'
WHERE id=@id --这里进行对应的处理。能够依据须要填入SQL语句
FETCH NEXT FROM cursorTest INTO @id,@name --将游标向下移动一行
END --关闭游标
CLOSE cursorTest
DEALLOCATE cursorTest

完毕之后。运行一下:

发现我们想要的循环效果出现了。。。。嘿嘿~~~

最新文章

  1. 简化 Web 应用程序与 Windows Azure Active Directory、ASP.NET 和 Visual Studio 的集成
  2. ATPCS和AAPCS
  3. windows8运行php Composer出现SSL报错的问题
  4. HDU 4593 H - Robot 水题
  5. linux0.11下的中断机制分析
  6. TFS环境搭建
  7. ionic android app 签名处理
  8. Gym Class(拓扑排序)
  9. hdoj 5319 Painter(模拟题)
  10. Linux ALSA声卡驱动之二:声卡的创建
  11. 【Android Developers Training】 66. 添加动画
  12. Python3 的分支与循环
  13. C# 语言历史版本特性(C# 1.0到C# 8.0汇总)
  14. 立即执行函数(自执行函数) IIFE
  15. 字符串以及for循环
  16. 04: linux基础总结
  17. asp.net c# 虾米音乐API
  18. Linux常用软件(以及特殊命令)清单(ubuntu)
  19. ORM--------Hibernate、Mybatis与Spring Data的区别
  20. 软件项目需求调研中的5W+1H定律案例分析

热门文章

  1. [CF235E]Number Challenge
  2. jQuery判断一个元素是否为另一个元素的子元素
  3. Linux下使用xargs将多行文本转换成一行并用tr实现逗号隔开
  4. MSGPACK序列和还原TFDParams
  5. 特征选取方法PCA与LDA
  6. SQL注入之导出WebShell
  7. 计算两个经纬度之间的距离(python算法)
  8. Hibernate 参数匹配查询
  9. vlan 介绍
  10. python 创建类先执行metaclass父类__new__ > __init__>__call__ 然后再执行自己的__new__>__init__