游标使用步骤
SQL Server 对游标的使用要遵循以下顺序:
(1) 声明游标 (declare)
(2) 打开游标 (open)
(3) 读取游标 (fetch)
(4) 关闭游标 (close)
(5) 释放游标 (deallocate)
delclare <游标名] [insensitive] [scroll]cursor
for <select 语句>
[for readonly] |update [of <列名>,[,…..n]]
insensitive :使用insensitive定义的游标,把提取出来的数据存入一个在tempdb数据库中创建的临时表中。任何通过这个游标的操作,都在这个临时表中进行,所有对基本表的更改都不会在通过游标进行的操作中体现出来。若不适用insensi-tive关键字,则所有用户对基本表的更新和删除都会反应到游标中。
scroll :表明所有的提取操作(如 first 、last、prior、next、relative、abso-lute)都可以用。若不使用scroll ,那么只能进行next提取操作。
readonly :定义只读游标,不允许通过游标修改数据。
update [of <列名>,[,…..n]] :定义游标中可更新的列。如果指定of <列名>[,…..n],则只允许修改所列出的列。如果只有update,没有指定列的列表,则可以更新所有列。
声明游标以后,出了可以使用游标名称来引用外,还可以使用游标变量来引用游标。
游标变量声明格式:
declare @ 变量名 cursor
声明游标变量后,其必须与某个游标相关联才可以实现游标操作,即使用set 赋值语句来讲