MySql简单入门

    技术2022-07-11  79

    3、游标主要用于交互式应用,其中用户需要滚动屏幕上的数据,并对数据进行浏览或做出更改。MYSQL游标只能用于存储过程(和函数)

    3.1 什么是“游标(Cursor)”?游标是SQL 的一种数据访问机制 ,游标是一种处理数据的方法。众所周知,使用SQL的select查询操作返回的结果是一个包含一行或者是多行的数据集,如果我们要对查询的结果再进行查询,比如(查看结果的第一行、下一行、最后一行、前十行等等操作)简单的通过select语句是无法完成的,因为这时候索要查询的结果不是数据表,而是已经查询出来的结果集。游标就是针对这种情况而出现的。

    “ 游标 ”简单的看成是【结果集】的一个指针,可以根据需要在结果集上面来回滚动,浏览我需要的数据

    3.2 使用游标的步骤

     在能够使用游标前,必须声明(定义)它。这个过程实际上没有检索数据,它只是定义要使用的SELECT语句。  一旦声明后,必须打开游标以供使用。这个过程用前面定义的SELECT语句把数据实际检索出来。  对于填有数据的游标,根据需要取出(检索)各行。  在结束游标使用时,必须关闭游标。

    五步走:声明游标----->打开游标------>读取数据----->关闭数据------>删除游标

    3.3 声明游标 :语句用来定义和命名游标。在定义游标之后,可以打开它。

    DECLARE 游标名 CURSOR [LOCAL | GLOBAL]   

                    [ FORWARD_ONLY | SCROLL ]

                    [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ]

                    [ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ]

                    [ TYPE_WARNING ]

                   FOR  SELECT 查询语句

                   [ FOR UPDATE [ OF column_name [ ,...n ] ] ]

    3.4 打开和关闭游标

    OPEN CURSOR : 打开游标,

    CLOSE 游标名:close释放游标使用的所有内部内存和资源,因此在每个游标不再需要时都应该关闭

    3.5 使用游标数据

    FETCH [NEXT | PRIOR | FIRST | LAST | ABSOLUTE | RELATIVE ]  FROM  游标名 :在一个游标被打开后,可以使用FETCH语句分别访问它的每一行,FETCH指定检索什么数据(所需的列),检索出来的数据存储在什么地方。它还向前移动游标中的内部行指针,使下一条FETCH语句检索下一行(不重复读取同一行)。

    3.6 删除游标

    DEALLOCATE 游标名

    Processed: 0.010, SQL: 9