游标和触发器
概念:指向上下文区数指针,它为应用提供了一种对具有多行数据查询,结果集中的每一行数据分别进行单独处理的方法。简称为:处理多条记录
应用:
Plsql是一种可移植的高性能事务处理程序
(取出表中一条记录)
declare
定义部分
v_i number(5);
v_rowrj192%type;
v_row rj192%rowtype;
Begin
执行部分
Select id into v_i from rj192 where name=‘ ’;
Select * into v_row from rj192 where name=‘’;
dbms_output.put_line(v_i);
dbms_output.put_line(v_row.id||v_row.name||v_row.age);
Exception
异常处理部分
End;
取出表中所以记录(数据)
游标 cursor
显示游标
Declare
定义游标
Cursor c_cursor is select * from rj192;
定义变量 保存取出的一行数据
v_row rj192%rowtype;
Begin
打开游标
Open c_corsor;
- -循环
Loop
提取数据
Fetch c_cursor into v_row;
Exit when c_cursor%notfound; - -退出条件,当提取数据时,提取不到返回true,即退出循环,提取到返回f
dbms_output.put_line(v_row.id||v_row.name);
End loop;
关闭游标
Close. c_cursor;
End;
隐式游标
非查询语句(insert delete update) 游标名默认为sql
将id为8的 name改成张三
Declare
- -隐含定义游标
Begin
- -隐含打开
Update rj192 set name=‘张三’ where id=8;
If sql%found then
dbms_output.put_line(‘找到该用户’);
End if;
End;