sql 创建一个SQL数据库API游标,一次从数据库表中获取一千行,并将其留给数据库进行计算
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 创建一个SQL数据库API游标,一次从数据库表中获取一千行,并将其留给数据库进行计算相关的知识,希望对你有一定的参考价值。
-- http://dba.stackexchange.com/a/82806
DECLARE @cur INTEGER
,
-- FAST_FORWARD | AUTO_FETCH | AUTO_CLOSE
@scrollopt INTEGER = 16 | 8192 | 16384
,
-- READ_ONLY, CHECK_ACCEPTED_OPTS, READ_ONLY_ACCEPTABLE
@ccopt INTEGER = 1 | 32768 | 65536
,@rowcount INTEGER = 1000
,@rc INTEGER;
-- Open the cursor and return the first 1,000 rows
EXECUTE @rc = sys.sp_cursoropen @cur OUTPUT
,'SELECT MyColumn FROM MyTable'
,@scrollopt OUTPUT
,@ccopt OUTPUT
,@rowcount OUTPUT;
IF @rc <> 16 -- FastForward cursor automatically closed
BEGIN
-- Name the cursor so we can use CURSOR_STATUS
EXECUTE sys.sp_cursoroption @cur
,2
,'MyCursorName';
-- Until the cursor auto-closes
WHILE CURSOR_STATUS('global', 'MyCursorName') = 1
BEGIN
EXECUTE sys.sp_cursorfetch @cur
,2
,0
,1000;
END;
END;
-- Refer to:
-- 1. sp_cursoropen - http://msdn.microsoft.com/en-us/library/ff848737.aspx
-- 2. sp_cursoroption - http://msdn.microsoft.com/en-us/library/ff848779.aspx
-- 3. sp_cursorfetch - http://msdn.microsoft.com/en-us/library/ff848736.aspx
以上是关于sql 创建一个SQL数据库API游标,一次从数据库表中获取一千行,并将其留给数据库进行计算的主要内容,如果未能解决你的问题,请参考以下文章
SQL Server 数据库性能优化
sql server 数据库性能忧化
记一次从Sql Server中图片二进制流还原回图片的开发过程
SQL 中将游标循环查询的结果插入到临时表中
sql 游标如何循环
什么是游标?