SQL游标的使用与语法
原文发布时间为:2010-08-07 —— 来源于本人的百度文章 [由搬家工具导入]
以[master].[dbo].[spt_values] 这个表为例子
===
declare @name nvarchar(35) 
declare @number int
declare my_cursor cursor for         --定义游标cursor1 
select TOP 5 [name],[number] from [spt_values]               --使用游标的对象(跟据需要填入select文)
open my_cursor                       --打开游标 
fetch next from my_cursor into @name,@number  --将游标向下移1行,获取的数据放入之前定义的变量@id,@name中
while(@@fetch_status=0)          --判断是否成功获取数据 
begin
--update [spt_values] set [name]=@name+'1' 
--where [number]=@number+1           --进行相应处理(跟据需要填入SQL文)
print @name
print @number
print '===='
fetch next from my_cursor into @name,@number  --将游标向下移1行
end 
close my_cursor                   --关闭游标 
deallocate my_cursor
=====================以下是基础
blog.csdn.net/lejuo/archive/2008/11/12/3279340.aspx
可百度 SQL游标语法及举例 进行更深入学习
游标的定义:
每一个游标必须有四个组成部分这四个关键部分必须符合下面的顺序; 
1.DECLARE 游标 
2.OPEN 游标 
3.从一个游标中FETCH 信息 
4.CLOSE 或DEALLOCATE 游标 
通常我们使用DECLARE 来声明一个游标声明一个游标主要包括以下主要内容: 
游标名字 
数据来源(表和列) 
选取条件 
属性(仅读或可修改) 
其语法格式如下: 
DECLARE cursor_name [INSENSITIVE] [SCROLL] CURSOR 
FOR select_statement 
[FOR {READ ONLY | UPDATE [OF column_name [,...n]]}] 
其中: 
cursor_name 
指游标的名字。 
INSENSITIVE 
表明MS SQL SERVER 会将游标定义所选取出来的数据记录存放在一临时表内(建立在tempdb 数据库下)。对该游标的读取操作皆由临时表来应答。因此,对基本表的修改并不影响游标提取的数据,即游标不会随着基本表内容的改变而改变,同时也无法通过 
游标来更新基本表。如果不使用该保留字,那么对基本表的更新、删除都会反映到游标中。 
另外应该指出,当遇到以下情况发生时,游标将自动设定INSENSITIVE 选项。 
在SELECT 语句中使用DISTINCT、 GROUP BY、 HAVING UNION 语句; 
使用OUTER JOIN; 
所选取的任意表没有索引; 
将实数值当作选取的列。 
SCROLL 
表 明所有的提取操作(如FIRST、 LAST、 PRIOR、 NEXT、 RELATIVE、  ABSOLUTE)都可用。如果不使用该保留字,那么只能进行NEXT 提取操作。由此可见,SCROLL  极大地增加了提取数据的灵活性,可以随意读取结果集中的任一行数据记录,而不必关闭再 
重开游标。 
select_statement 
是定义结果集的SELECT 语句。应该注意的是,在游标中不能使用COMPUTE、COMPU- TE BY、 FOR BROWSE、 INTO 语句。 
READ ONLY 
表明不允许游标内的数据被更新尽管在缺省状态下游标是允许更新的。而且在UPDATE或DELETE 语句的WHERE CURRENT OF 子句中,不允许对该游标进行引用。 
UPDATE [OF column_name[,…n]] 
定义在游标中可被修改的列,如果不指出要更新的列,那么所有的列都将被更新。当游标被成功创。
SQL游标的使用与语法的更多相关文章
- SQL游标(cursor)详细说明及内部循环使用示例
		
游标 游标(cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果.每个游标区都有一个名字,用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理. 游标是处理 ...
 - Oracle数据库之PL/SQL游标
		
1. 游标概念 字面意思是游动的光标,是指向上下文区域的句柄或指针. 在PL/SQL块中执行CRUD操作时,ORACLE会在内存中为其分配上下文区.用数据库语言来描述游标就是:映射在上下文区结果集中一 ...
 - 网上看到一份详细sql游标说明  《转载 https://www.cnblogs.com/xiongzaiqiren/p/sql-cursor.html》
		
SQL游标(cursor)详细说明及内部循环使用示例 游标 游标(cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果.每个游标区都有一个名字,用户可以用SQL语句逐一从游标中获 ...
 - SQL Server游标    C# DataTable.Select() 筛选数据    什么是SQL游标?  SQL Server数据类型转换方法   LinQ是什么?  SQL Server 分页方法汇总
		
SQL Server游标 转载自:http://www.cnblogs.com/knowledgesea/p/3699851.html. 什么是游标 结果集,结果集就是select查询之后返回的所 ...
 - SQL 游标介绍及使用
		
游标 游标(cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果.每个游标区都有一个名字,用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理. 游标是处理 ...
 - sql 游标例子 根据一表的数据去筛选另一表的数据
		
sql 游标例子 根据一表的数据去筛选另一表的数据 DECLARE @MID nvarchar(20)DECLARE @UTime datetime DECLARE @TBL_Temp table( ...
 - sql 游标循环当中重新赋值
		
sql 游标循环当中的变量必须重新赋值不然变量的值就是前次循环的值
 - SQL 游标的应用
		
----------------SQL游标应用-----------------if object_id('tempdb..#test0001') is not null drop table #te ...
 - PL/SQL 游标 (实验七)
		
PL/SQL 游标 emp.dept 目标表结构及数据 要求 基于部门表建立游标dept_cursor1,使用记录变量接收游标数据,输出部门表信息: 显示格式: 部 门 号: XXX 部门名称: XX ...
 
随机推荐
- ElasticSearch High Level REST API【4】多搜索
			
1.Multi-Search多搜索请求 Multi-Search可同时添加多个search搜索请求,并行地在一个http请求中执行多个搜索请求,相较多次单请求查询可提升查询效率.ES客户掉通过mget ...
 - Zabbix监控oracle各服务器连接数
			
需求: 根据机器名查询oracle连接数,并通过zabbix进行监控 脚本: [root@rac1 Zabbix_S]# cat get_conns.py#!/usr/bin/python#codin ...
 - MySql主从同步笔记
			
1.MySql主从同步是基于二进制日志实现的,二进制日志记录了主服务器数据库的所有变动,从服务器通过读取和执行该日志文件保持和主数据库的数据一致: 2.配置主服务器 a.开启二进制日志,找到MySql ...
 - kubernetes搭建dashboard报错
			
warningconfigmaps is forbidden: User "system:serviceaccount:kube-system:kubernetes-dashboard&qu ...
 - 【CSS】CSS 的优先级总结
			
样式的优先级 多重样式(Multiple Styles):如果外部样式.内部样式和内联样式同时应用于同一个元素,就是使多重样式的情况. 一般情况下,优先级如下: (外部样式)External styl ...
 - linux命令学习-2
			
1. 对于已经在前台执行的命令,可以重新放到后台执行,首先按ctrl+z暂停已经运行的进程,然后使用jobs查看进程编号n:2. bg命令将停止的作业放到后台运行 bg %n3. kill -9 XX ...
 - A brief look at the Objects in JavaScript
			
Objects An object is a self-contained collection of data. This data comes in to forms: properties ...
 - C# datagridview列绑定类中类的属性
			
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://www.cnblogs.com/linghaoxinpian/p/5906374. ...
 - 虚拟机安装教程(linux、centOS)
			
前提: Windows7系统 64位 VMware-workstation-full-11.0.0-2305329.exe CentOS-6.6-x86_64-bin-DVD1.iso 安装步骤: 看 ...
 - 理解机器为什么可以学习(二)---Training versus Testing
			
前边由Hoeffding出发讨论了为什么机器可以学习,主要就是在N很大的时候Ein PAC Eout,选择较小的Ein,这样的Eout也较小,但是当时还有一个问题没有解决,就是当时的假设的h的集合是个 ...