sqlserver游标选项说明

本文介绍了SQL Server中游标的各类选项,包括LOCAL、GLOBAL、FORWARD_ONLY、SCROLL、STATIC、KEYSET、DYNAMIC、FAST_FORWARD等,以及它们在性能和行为上的差异。例如,静态游标在查询效率上优于滚动游标,而滚动游标提供了更灵活的定位功能。同时,文章也提及了READ_ONLY、SCROLL_LOCKS和OPTIMISTIC等更新选项的影响。
摘要由CSDN通过智能技术生成
/*
游标使用步骤:
DECLARE CURSOR 定义 Transact-SQL 服务器游标的属性,例如游标的滚动行为和用于生成游标所操作的结果集的查询。
OPEN 语句填充结果集,
FETCH 从结果集返回行。
CLOSE 语句释放与游标关联的当前结果集。
DEALLOCATE 语句释放游标所使用的资源。


声明游标语法:
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 ] ] ]
*/

--测试
SET NOCOUNT ON
DECLARE @GUID UNIQUEIDENTIFIER
DECLARE @NAME VARCHAR(50)
DECLARE @VALUE DECIMAL(18,4)
DECLARE @InsertDate DATETIME
DECLARE @Mark bit
DECLARE MYCUR CURSOR TYPE_WARNING 
    FOR SELECT [Guid],[Name],[Value],[InsertDate],[Mark] FROM [dbo].[CURTAB]
    -- FOR UPDATE OF [Value]
OPEN MYCUR
--FETCH FIRST FROM MYCUR INTO @GUID,@NAME,@VALUE,@InsertDate,@Mark
FETCH NEXT FROM MYCUR INTO @GUID,@
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值