创建过程

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

CREATE OR REPLACE PROCEDURE

find_emp

AS

empNumber number;

BEGIN

select count(*)INTO empNumber from emp

where JOB='SALESMAN';

DBMS_OUTPUT.PUT_LINE('销售员人数是 '|| empNumber);

EXCEPTION

WHEN NO_DATA_FOUND THEN

DBMS_OUTPUT.PUT_LINE ('当前表没有销售员');

END find_emp;

/

2.实现一个过程,完成对employees表中job_id为'IT_PROG'的员工salary的增加,增加额度为800;

结果

create or replace procedure

addSalary

as

rowNumber number;

begin

update employees set SALARY=SALARY+800where JOB_ID='IT_PROG';

end addSalary;

/

3.实现一个过程,查询employees表中员工的平均工资,根据job_id查询某个员工salary是否大于或小于员工平均工资,job_id作为参数传入。

输出格式为:job_id salary avgSalary 大于/小于员工平均工资

create or replace procedure

query_avgSal(emp_id NUMBER)

as

avg_salary number(6,2);

emp_salary number;

begin

select avg(SALARY)into avg_salary from employees;

select SALARY into emp_salary from employees where EMPLOYEE_ID=emp_id;

if emp_salary>avg_salary then

DBMS_OUTPUT.PUT_LINE(emp_id||' '||emp_salary||' '||avg_salary||'大于员工平均工资');

elsif emp_salary

DBMS_OUTPUT.PUT_LINE(emp_id||' '||emp_salary||' '||avg_salary||'小于员工平均工资');

打开显示开关:

相关文档
最新文档