`
lovnet
  • 浏览: 6908861 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论
阅读更多
游标详解之基本语法
作者:佚名转自:http://www.pushad.com点击:208发布日期:2007-7-4

要想明白什么是游标就不能不从游标的定义来谈了,看看游标的TSQL定义语法


DECLARE cursor_name CURSOR
[ LOCAL | GLOBAL ]
[ FORWARD_ONLY | SCROLL ]
[ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ]
[ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ]
[ TYPE_WARNING ]
FOR select_statement
[ FOR UPDATE [ OF column_name [ ,...n ] ] ]

SQL游标的简单使用

Posted on 2007-06-29 13:46 williambirkin 阅读(18) 评论(0) 编辑 收藏 所属分类: [J] SQL Server <!-- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"> <rdf:Description rdf:about="http://www.cnblogs.com/williambirkin/archive/2007/06/29/800114.html" dc:identifier="http://www.cnblogs.com/williambirkin/archive/2007/06/29/800114.html" dc:title="SQL游标的简单使用" trackback:ping="http://www.cnblogs.com/williambirkin/services/trackbacks/800114.aspx" /> </rdf:RDF> -->
CREATEPROCEDURE[dbo].[pro_CURSOR]
AS
BEGIN

--声明一个游标
DECLAREMyCURSORCURSORFOR
SELECTuserid,depidFROMusers

--打开游标
openMyCURSOR

--声明两个变量
declare@useridvarchar(50)
declare@depidvarchar(50)

--循环移动
fetchnextfromMyCURSORinto@userid,@depid
while(@@fetch_status=0)
begin
updateuserssetdescription=(selectdep_desfromdepartmentwheredepid=@depid)
whereuserid=@userid
fetchnextfromMyCURSORinto@userid,@depid
end

closeMyCURSOR
deallocateMyCURSOR

END


再来看一个使用游标的例子,注意后面的注释

DECLARE myCur CURSOR
-- 定义一个名称为myCur的游标对象

FOR SELECT [name] FROM Products
-- 定义了这个游标的功能

OPEN myCur
-- 打开游标

FETCH NEXT FROM myCur INTO @username
-- 检索结果行并赋值到@username

WHILE @@FETCH_STATUS = 0
-- 返回最后被执行的游标的状态(0为成功)

FETCH NEXT FROM myCur
-- 检索下一条结果行(循环)

CLOSE myCur
-- 关闭游标

DEALLOCATE myCur
-- 销毁游标对象

这是一个简单语法结构的游标使用,很明显的看出游标具有循环的某些特点,@@FETCH_STATUS 是循环条件,当它不为0时,说明结果集已经到达最后一行或者结果集不存在,那么就跳初循环直接CLOSE掉myCur这个游标对象。那么现在就很好明白游标是什么了。游标其实就是循环提取满足SELECT_STATEMENT结果集的一个数据库对象。虽然游标看似简单,当要恰如其分的使用它还需要多多的练习和总结

分享到:
评论

相关推荐

    SQL游标使用例子--有注释

    ### SQL游标使用详解 #### 一、引言 在SQL编程中,游标是一种用于处理查询结果集的工具,可以实现对数据行的逐行访问。本文将通过一个具体的示例来详细介绍如何使用SQL游标,并解释其背后的原理与应用场景。 ####...

    SQL游标原理和使用方法.doc

    ### SQL游标原理和使用方法 #### 一、引言 在数据库开发中,当我们需要检索数据时,通常会使用`SELECT`语句。但在某些情况下,我们需要从查询结果集中逐条读取记录,这时就需要用到游标。本文将详细介绍SQL游标的...

    SQL游标小计

    SQL游标小计

    SQL游标原理和使用方法

    SQL游标是数据库管理系统中一个重要的概念,它允许程序员按需逐行处理查询结果,而不仅仅是一次性获取所有数据。在数据库编程中,特别是在处理大量数据或进行复杂事务时,游标显得尤为有用。本文将详细讲解SQL游标的...

    sql 游标详解

    ### SQL 游标详解 #### 一、游标的基本概念 在SQL中,游标是一种特殊的指针,用于逐行地检索查询结果。这与一般的SQL查询不同,后者通常是返回所有匹配的结果集。游标提供了对从表或多个表中获取的数据进行遍历的...

    关于sql游标使用的教程

    SQL游标是数据库管理系统中一个重要的概念,尤其在Oracle数据库中,它被广泛用于处理复杂的查询和数据操作。本教程将深入探讨SQL游标的使用,帮助你更好地理解和掌握这一技术。 首先,我们要明白什么是SQL游标。...

    实训SQL游标的使用

    记住,熟练掌握SQL游标对于任何数据库开发者来说都是至关重要的技能,无论是在日常的查询任务还是在复杂的业务逻辑处理中,游标都能发挥重要作用。通过不断练习和学习,你将能够更好地理解和运用SQL游标,从而提升你...

    sql游标示例

    本示例通过一系列步骤展示了如何使用SQL游标来处理表中的数据。它涉及到了变量声明、条件判断、游标的声明与操作等多个方面。需要注意的是,虽然游标提供了强大的数据处理能力,但其性能通常不如基于集合的查询操作...

    关于sql游标的使用教程及案例

    标题“关于sql游标的使用教程及案例”指出了文档的核心内容,即将对SQL游标使用进行讲解,并通过具体案例加深理解。描述“对游标使用的讲解及相关案例”进一步明确了文档将提供游标使用的详细解释,并结合实例进行...

    SQL游标深处 游标案例 没有说明 自己看

    ### SQL游标深入解析与应用案例 #### 一、SQL游标基础知识 **SQL游标**是一种数据库对象,主要用于在数据库管理系统中处理结果集中的数据行。它允许用户逐行检索查询结果,并对每一行执行复杂的操作。游标通常用于...

    一个简单的用法SQL游标的用法

    一个简单的用法一个简一个简单的用法一个简单的用法单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法

    SQL游标简介(详细)

    SQL游标是数据库开发中的一种重要工具,尤其在处理逐条数据操作的场景下显得尤为重要。游标允许程序员按照特定顺序访问查询结果集,并对每一行数据进行独立的操作,如读取、修改、删除等。这与传统的面向集合的...

    SQL游标使用金典

    ### SQL游标使用详解 #### 一、游标概述 在深入探讨SQL游标的使用之前,我们先来了解一下什么是游标。游标是数据库管理系统的功能之一,它允许用户逐行处理查询结果集中的数据。通常情况下,当我们执行一个SELECT...

    sql 游标 处理数据方法

    总之,SQL游标提供了一种灵活的方式来处理和交互数据库中的数据,允许用户按需处理每一行,这在某些复杂业务逻辑或需要逐行检查和修改数据的场景下特别有用。然而,由于游标消耗更多资源,对于大数据量的操作,通常...

    基于SQL游标的研究与应用.pdf

    在数据库管理中,SQL游标是一种用于管理结果集的技术,它可以逐条遍历结果集中的数据。本文从SQL游标的基本原理出发,详细介绍了游标的操作方法及其在实际数据处理中的应用。 首先,SQL游标解决了直接使用SQL语句...

    SQL游标先进先出操作

    "SQL游标先进先出操作"这个主题聚焦于如何利用游标实现类似队列的数据处理方式,即先进先出(FIFO)原则。在数据库管理中,这种机制对于执行特定类型的任务,如处理顺序数据流或逐个处理记录,尤其有用。 首先,...

    13_4 SQL编程基础-T-SQL游标.pptx

    SQL Server 编程基础 - T-SQL 游标 T-SQL 游标是 SQL Server 中的一种重要概念,提供了一种对从表中检索出的数据进行操作的灵活手段。游标是一种能从包含多条数据记录的结果集中每次提取一条记录的机制,用户可以...

    sql游标的运用.txt

    ### SQL游标的运用 在SQL中,游标(Cursor)是一种强大的工具,允许用户逐行处理查询结果集,尤其在需要对每一行数据进行特定操作时非常有用。游标可以被视为一个临时存储区域,其中包含了由SELECT语句返回的数据行...

Global site tag (gtag.js) - Google Analytics