在oracle中如何用declare声明变量
发布网友
发布时间:2022-04-08 01:10
我来回答
共2个回答
热心网友
时间:2022-04-08 02:39
先说一下你的问题,declare在oracle中指代的是“块”,用于处理一段业务逻辑的。
声明块中的变量,只需要在块里面的最前面输入声明即可。
示例:
declare
//这两个声明是声明了一个游标
type cursor_type is ref cursor;
cursor_deptno cursor_type;
//这下面2个变量的声明,使用的是emps表下面的sal或ename字段的类型,你也可以直接定义
v_sal emps.sal%type;
v_name emps.ename%type;
//你也可以这样,直接赋值,当然了,oracle里的赋值是需要使用“:=”,只用“=”报错
i number :=0;
begin
open cursor_deptno for select ename,sal into v_name,v_sal from emps
where deptno = &input deptno;
loop fetch cursor_deptno into v_name,v_sal; -- 循环体
if v_sal < 2000 then -- 判断
update scott.emps set sal = v_sal + 101 where ename = v_name;
end if;
exit when cursor_deptno%notfound; -- 当取完了即结束
dbms_output.put_line('Name:'|| v_name ||' Sal:'|| v_sal);
end loop;
end;
热心网友
时间:2022-04-08 03:57
很容易搜到的不是!