您的位置:首页 > 数据库

SQL 游标cursor

2016-05-27 20:28 369 查看
游标的概念:游标是一种处理数据的方法,它可以指向表中的单一记录,比where语句更加灵活高效,主要用于存储过程、触发器和Transact-SQL脚本中,提供在结果集中

向前或向后浏览数据的功能;

游标的优点:

1、对结果集中的每一行记录执行相同或不同的操作,而非对整个集合执行同一个操作;

2、可以对游标位置在表中所在的行,进行删除和更新的操作;

3、游标作为数据库管理系统和应用程序之间的桥梁,将两种处理方式连接起来;

服务器游标类型:

1、只进游标:不支持滚动,只能从头到尾顺序提取;

2、静态游标:不会显示打开游标以后新插入的行,会显示打开游标以后刚删除的行;

3、由键集驱动的游标:对应的键集是在打开该游标时在tempdb中生成的;

4、动态游标:当滚动游标时会反映结果集中所在的所有更改;

游标的基本操作:声明、打开、读取、关闭、释放;

DECLARE cursor_suppliers CURSOR FOR    ---1、游标的声明(给游标赋值):
SELECT s_name,s_city
FROM suppliers

OPEN cursor_suppliers;               ----2、游标的打开:

FETCH NEXT FROM cursor_suppliers    -----3、读取游标:
WHILE @@FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM cursor_suppliers
END

CLOSE cursor_suppliers;            -----4、关闭游标;

DEALLOCATE cursor_suppliers;     -------5、释放游标;


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息