oracle的declare怎么写select

 我来答
智者总要千虑
高粉答主

2017-12-13 · 说的都是干货,快来关注
知道顶级答主
回答量:7.9万
采纳率:88%
帮助的人:1.4亿
展开全部
只需要在块里面的最前面输入声明即可。
示例:
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;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式