PL / SQL函数

时间:2012-05-09 08:32:30

标签: plsql oracle11g

  

可能重复:
  Homework on PL/SQL FUNCTIONS
  plsql functions

功能:

  1. Display_Employee_Name_In_Uppercase表接受Employee_ID的{​​{1}}函数,并以大写形式返回员工的姓和名。
  2. 编写一个小型PL / SQL程序,以显示Empoyees为107,200和205的员工的姓名。
  3. 这就是我所做的,我不知道如何完成它 可以帮忙吗?

    Employee_IDs

2 个答案:

答案 0 :(得分:1)

像这样......

CREATE OR REPLACE 
FUNCTION Fn_Display(p_empId IN VARCHAR2)
RETURN VARCHAR2

IS

empName VARCHAR2(100);    

BEGIN

 BEGIN
  SELECT UPPER(first_name || ' ' || last_name)
  INTO  empName
  FROM Employees
  WHERE employee_id = p_empId; 
 EXCEPTION 
    WHEN NO_DATA_FOUND THEN
       RAISE NO_DATA_FOUND                
 END;


 RETURN empName;

END Fn_Display;

您可以在任何地方调用此功能。这是一个样本...

  DECLARE

    empId VARCHAR2(100);
    empName VARCHAR2(100);

  BEGIN

    empId := &ENTER_EMPLOYEE_ID;
    empName := Fn_Display(empId);

    DBMS_OUTPUT.PUT_LINE('Employee Name: '||empName);

  END;

答案 1 :(得分:0)

你可以尝试这段代码,也许这个代码适合你:

CREATE OR REPLACE FUNCTION disp (emp_id in  varchar2) return varchar2 IS
emp_name varchar2(256);
BEGIN
  select UPPER(fname || ' ' || lname) 
  into emp_name  
  from employees 
  where employee_id = emp_id;
  return emp_name;
END disp;