oracle中plsql练习题----查询姓为“SMITH”的员工信息,并输出其员工号姓名工资部门号。 – –如果该员工不存在,则插入一条新记录,员工号为2012,员工姓名为“Smith”,工(代码

Posted yanpingping

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle中plsql练习题----查询姓为“SMITH”的员工信息,并输出其员工号姓名工资部门号。 – –如果该员工不存在,则插入一条新记录,员工号为2012,员工姓名为“Smith”,工(代码相关的知识,希望对你有一定的参考价值。

一、思路:首先判断这个查询的是emp表,需要接收值,声明一个rowtype类型接收数据即可,第二是,存在exception,需要处理,exception中有两种异常,分别处理即可,分别输出即可。

二、在增删改之后加上commit提交事物。

三、具体实现

 

 1 declare
 2 -- 声明rowtype类型接收数据即可
 3 v_emp emp%rowtype;
 4 
 5 begin
 6   -- 查询员工中姓为“SMITH”
 7   select * into v_emp from emp where ename=SMITH;
 8   dbms_output.put_line(工号:||v_emp.empno||,姓名:||v_emp.ename||,工资:||v_emp.sal||,部门号:||v_emp.deptno);  
 9     
10 exception
11   -- 如果该员工不存在,则插入一条新记录
12   when no_data_found then
13   insert into emp(empno, ename, sal,  hiredate,deptno)  values(2001, smith,7500, to_date(2018-10-5, yyyy-mm-dd), 50);
14   commit;
15   -- 如果查询员工数据不止两条,则循环输出
16   when too_many_rows then
17       for v_emp in (select * from emp where ename=Smith) loop
18       dbms_output.put_line(工号:||v_emp.empno||,姓名:||v_emp.ename||,工资:||v_emp.sal||,部门号:||v_emp.deptno);
19     
20   end loop;   
21 end;

 

以上是关于oracle中plsql练习题----查询姓为“SMITH”的员工信息,并输出其员工号姓名工资部门号。 – –如果该员工不存在,则插入一条新记录,员工号为2012,员工姓名为“Smith”,工(代码的主要内容,如果未能解决你的问题,请参考以下文章

plsql 与 sqlplus 查询结果不一致

用PLSQL查询oracle数据库中某个表,查询结果如果包含两个字段时就会卡死

PLSQL连接Oracle使用like模糊查询中文时返回结果为空

JAVA连数据库查询结果和PLSQL不一样(oracle)

测试次数最多的国家(oracle plsql)

oracle数据库中存储过程plsql能查但java查询不到,其他表查询都可以,而且上周该存储过程也是可以的。