暂无图片
如果输入的雇员不存在,则抛出自定义异常,这个语句哪里有错误吗,为什么不行
我来答
分享
学生
2020-04-03
如果输入的雇员不存在,则抛出自定义异常,这个语句哪里有错误吗,为什么不行

declare
nodatafound exception;
v_ename emp.ename%type:=’&ename’;
v_empno emp.empno%type;
v_sal emp.sal%type;
n number;
begin
select count(*),empno,sal into n,v_empno,v_sal from emp where ename=v_ename;
if n=0 then
raise nodatafound;
end if;
dbms_output.put_line(v_ename||‘的编号’||v_empno||‘薪水’||v_sal);
exception
when nodatafound then
raise_application_error(-20004,‘该雇员不存在’);
when others then
dbms_output.put_line(‘其他异常’);
end;

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
张磊

存储过程逻辑有问题

暂无图片 评论
暂无图片 有用 0
打赏 0
张磊

declare
v_ename emp.ename%type:=’&ename’;
v_empno emp.empno%type;
v_sal emp.sal%type;
n number(10);
begin
select count(*) into n from emp where ename=v_ename;
if n =0 then
dbms_output.put_line(v_ename||’ 该雇员不存在 ‘);
elsif n =1 then
select empno,sal,ename into v_empno,v_sal,v_ename from emp where ename=v_ename;
dbms_output.put_line(v_ename||’ empno:’||v_empno||’ sal:’||v_sal);
else
dbms_output.put_line(v_ename||’ 该雇员存在同名’);
end if;
end;

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
请对重做日志和闪回数据库的闪回日志进行一个比较说明。
回答 3
已采纳
闪回日志和重做日志的区别有:—说明闪回数据库—使用闪回表将表内容还原到过去的特定时间点—从删除表中进行恢复—使用闪回查询查看截止到任一时间点的数据库内容—使用闪回版本查询查看某一行在一段时间内的各个版
oracle中的索引逻辑多啥意思?
回答 1
当一个查询语句被执行时,服务器进程会将相关的数据块从数据文件中写入内存(buffercache)。这就叫做 物理读 。每读取一个数据块,即是一次物理读。而用户需要的并不是整个数据块
我在Oracle日志表里边没有查到关于一张表的删除记录 但表中数据无缘无故就被清除了,什么情况?
回答 1
可以试试logminer看看有没有相关删除或者清空的操作
东方瑞通Oracle OCP培训咋样?
回答 2
机构是一方面,要自己主动学习,总结和思考。培训当前推荐线上的,恩墨很好,因为相关讲师是有工作和实战经验的。
达梦数据库有没有类似oracle的AWR报告?
回答 1
已采纳
有,达梦数据库默认没有启动,可以参考达梦操作手册进行操作生成awr报告;达梦的管理工具中也可以实时监控数据库;
怎么查看oracle中某个表里面的自增序列?
回答 2
oracle序列和表名没直接对应关系的,可以通过查询allsequences表查询序列名,根据自己的命名规则加条件查询
升级故障
回答 1
selectobjectid,objectname,status,ownerfromdbaobjectswhereupper(owner)||'.'||upper(objectname)'WMSYS.
RMAN里为何要些alter system archive log current
回答 5
已采纳
被充一下:
Oracle 中有一天的归档日志删不掉,文件都直接删掉了 ,但是rman 删记录删不掉,这是为什么?
回答 3
已采纳
crosscheckarchivelogall;deleteexpiredarchivelogall;
正则匹配特殊字符
回答 1
程序里根据“”分割字符串取第一个packagemainimport("fmt""strings")funcmain(){str:[]string{"022","011","030"}for,v:ran