数据库游标

游标这个名字起的不好。给人感觉是一个指针标示。其实,游标是一个只读的数据集合。我们可以把操作数据库过程中的一些过程性内容放到游标里面,相当于一个草稿纸来使用。游标可以可以控制方向:向前,向后,第一个,最后一个,还有相对寻址。也可设定访问权限。

使用游标的步骤:

1.定义游标。这里只是定义,并不真正的开展工作。主要是定义select语句。

2.打开游标。真正的执行select语句。

3.检索。对于已经填充了数据的游标,可以检索出各个行。

4.关闭游标。释放资源。

 

1.创建游标

创建游标的语句如下

DECLARE myCursor CURSOR

FOR

SELECT *

FROM myDB

 2.使用游标

使用游标的基本思路是遍历游标。

--遍历游标
DECLARE @documentNO VARCHAR(32),
        @ProjectID VARCHAR(32),
        @FristClass VARCHAR(50), --对应于 FreeItem1 一级分类
        @SecondClass VARCHAR(50), --对应于 FreeItem2 二级分类
        @ThirdClass VARCHAR(50), --对应于 FreeItem3 三级分类
        @WhetherOS VARCHAR(50), --对应于 FreeItem4    是否是操作系统
        @Remark VARCHAR(50), --对应于 FreeItem5 备注
        @Comments VARCHAR(50), --对应于 FreeItem11 评论
        @OrganizationStructure VARCHAR(50) --对应于 freeItem12 组织结构、第二分类
OPEN myCursor
FETCH NEXT FROM myCursor
    INTO @documentNO,@ProjectID,@FristClass,@SecondClass,@ThirdClass,@WhetherOS,@Remark,@Comments,@OrganizationStructure
WHILE @@FETCH_STATUS = 0
    BEGIN
        ------------------------    工作    -----------------------
        FETCH NEXT FROM myCursor
            INTO @documentNO,@ProjectID,@FristClass,@SecondClass,@ThirdClass,@WhetherOS,@Remark,@Comments,@OrganizationStructure
    END
CLOSE myCursor

3.关闭游标释放资源

CLOSE myCursor
DEALLOCATE myCursor
posted @ 2012-07-29 15:43  疯狂鼠标垫  阅读(612)  评论(0编辑  收藏  举报