使用游标的原因:
使用游标(cursor) 的一个主要的原因就是把集合操作转换成单个记录处理方式。用 SQL 语言从数据库中检索数据后,结果放在内存的一块区域中, 且结果往往是一个含有多个记录的集合(既然是集合就意味着可以含有0或1或多个记录)。游标机制允许用户在 SQL server 内逐行地访问这些记录,按照用户自己的意愿来显示和处理这些记录。
使用游标的常规步骤:
(1) 声明游标。把游标与 T-SQL 语句的结果集联系起来。
(2) 打开游标。
(3) 使用游标操作数据。
(4) 关闭游标。
声明游标:
DECLARE 游标名 CURSOR
FOR SQL语句
如:
Declare MYCURSOR Cursor
FOR Select FROM tbMyData
打开游标 :
OPEN MYCURSOR
当游标被打开时,行指针将指向该游标集第 1 行之前,如果要读取游标集中的第 1 行数据,必须移动行指针使其指向第 1 行。就本例而言,可以使用下列操作读取第 1 行数据:
FETCH NEXT from MYCURSOR
使用游标操作数据:
在操作数据之前先介绍 全局变量 @@FETCH_STATUS:
每执行一个FETCH 操作之后,通常都要查看一下全局变量 @@FETCH_STATUS 中的状态值,以此判断 FETCH 操作是否成功。该变量有三种状态值:
0 表示成功执行 FETCH 语句。
-1 表示 FETCH 语句失败,例如移动行指针使其超出了结果集。
-2 表示被提取的行不存在。
OPEN MYCURSOR 打开游标
FETCH NEXT from MYCURSOR 读取第 1 行数据
WHILE @@FETCH_STATUS = 0 用 WHILE 循环控制游标活动
BEGIN
FETCH NEXT from MYCURSOR 在循环体内将读取其余行数据
END
关闭游标
CLOSE E1cursor 关闭游标
DEALLOCATE E1cursor 删除游标
相关推荐
Transact-SQL语言极其程序设计的方法; T-SQL游标的使用方法。
SQL相关资料
PRINT '游标中的第-2行[相对地址]:' + @value; -- 填充数据. FETCH PRIOR FROM c_test_main INTO @id, @value; PRINT '游标中的上一行:' + @value; -- 填充数据. FETCH NEXT FROM c_test_main INTO @id, @...
T-Sql 编程 触发器 游标 储存过程 函数 T-Sql 编程 触发器 游标 储存过程 函数
本书及其续篇——《Microsoft SQL Server 2005技术内幕:T-SQL程序设计》介绍了SQL Server 2005中高级T-SQL查询、查询优化及编程相关的知识。这两本书侧重于解决实践中的常见问题,并讨论了解决这些问题的方法。它们...
它详细介绍了T-SQL的内部体系结构,包含了非常全面的编程参考,提供了使用Transact-SQL(T-SQL)的专家级指导,囊括了非常全面的编程参考,揭示了基于集合的查询的强大威力,并包含大量来自专家们的参考和建议。...
痛苦的sql游标的止痛药 declare fetch 等还有其他的基本的sql操作,包含。
《Microsoft SQL Server 2008技术内幕:T-SQL语言基础》适合须要学习T-SQL的各级程序员和数据库专业人员,是他们快速掌握T-SQL的必备参考图书。 致谢 引言 第1章 T-SQL查询和编程基础 1.1 理论背景 1.2 SQL ...
《Microsoft SQL Server 2008技术内幕:T-SQL语言基础》适合须要学习T-SQL的各级程序员和数据库专业人员,是他们快速掌握T-SQL的必备参考图书。 致谢 引言 第1章 T-SQL查询和编程基础 1.1 理论背景 1.2 ...
该书解释并比较了SQL Server 2000和SQL Server 2005在数据库开发相关问题上的解决方案,深入讨论了SQL Server 2005中新增的T-SQL编程特性,包含了大量的代码示例、表示例和逻辑难题以帮助数据库开发人员和管理员理解...
SQL学习课件及T-SQL视频教程,深入浅出,讲解的非常详细,很容易理解。 主要内容: SQL概述 SQL数据模型及数据库设计 游标 索引 视图 ... T-SQL语句简介,视频教程,非常实用
介绍了T-SQL的使用,主要针对的是微软SQL SERVER 2005.Microsoft SQL Server 2005技术内幕:T-SQL程序设计》介绍了SQL Server 2005中高级T-SQL查询、查询优化及编程相关的知识。这两本书侧重于解决实践中的常见问题...
T-SQL语法 一、数据库存储结构 二、数据库表存储结构 三、约 束 四、规 则 五、默认 六、索 引 七、视图 八、触发器 九、select,delete,update,insert语句使用方法 十、函数数据整理 十一、游标 十二、存储过程
SQL语句通常都可产生或处理一组记录,但是许多应用程序,尤其是T-SQL嵌入的主语言,通常不能把整个结果集作为一个单元来处理,这些应用程序就需要用一种机制来保证每次处理结果集中的一行或几行,游标(cursor)就提供...
T-SQL强化RAISERROR详解,SQL 注入,使用 OUTPUT 游标参数,使用 WITH RECOMPILE 选项,使用sp_addmessage添加自定义消息 京华志&精华志出品 希望大家互相学习,互相进步 支持CSDN 支持微软 主要包括C# ASP.NET SQLDBA ...
1.掌握T-SQL基本语法 2.建立对象时应该先排查在系统表中是否有相同名字的对象。 四、注意事项 1.调用存储过程时传递参数。 2.触发器不接受用户应用程序传递的参数。 五、实验学时:6学时 六、实验重点及...
实验九:T-SQL编程、存储过程、游标 本实验主要讲解了T-SQL编程、存储过程和游标的使用,涵盖了变量的使用、内置函数、流程控制语句、函数的定义和使用、存储过程的编写和执行、游标的使用等多方面的知识点。 一、...
游标.sql
常用T-SQL,初学T-SQL下载,比如创建表、创建存储过程、创建游标等
(1)对银行贷款数据库,用游标实现按如下报表形式显示结果的T-SQL语句。该报表统计每家银行的贷款情况,只考虑有贷款记录的银行,每家银行的贷款记录需要按先按法人名称的升序排列,再按贷款日期的升序排列。报表...