在动态游标的帮助下,我们可以找到第一个,下一个,最后一个和任何相对行的表。
首先,我们创建一个名为EMP的表,并在此表上应用游标:
创建一个表
create table emp(emp_id int,em_name varchar(10)) go insert into emp select 1,'d' union all select 2,'e' union all select 3,'f' union all select 4,'mahi' union all select 5,'gill' union all select 6,'singh' go select * from emp
动态游标
动态游标与静态游标相反。
如果我们打开动态游标,之后我们在原始数据源中进行更改:假设我们删除表中的行,然后游标将反映表中所做的所有更改:我们无法访问删除的行。
动态游标对于数据库更改,可滚动和敏感。
动态游标对原始数据源的任何更改都很敏感。
它支持更新,删除操作。
语法:
Declare cursor_name cursor Dynamic for sql statement
其中:
cursor_nameis游标的名称。
Dynamic:是关键字,表示游标作为动态。
SQL语句:是要在游标中使用的SQL语句。
例子:
动态游标声明:
我们声明一个动态游标如下所示:
declare dynamic_cursor cursor dynamic for select * from emp
打开动态游标:
我们打开一个动态游标,如下所示:
open dynamic_cursor
从动态游标获取第一个数据:
这取出了指定表的第一行:
fetch first from dynamic_cursor
关闭动态游标:
我们关闭动态游标:
close dynamic_cursor
删除动态游标:
我们将是否dynamic_cursor游标如下所示:
deallocate dynamic_cursor
日期:2020-06-02 22:17:46 来源:oir作者:oir