Tarea sobre FUNCIONES PL / SQL [cerrado]
Me gustaría saber si mis respuestas son correctas, por favor, ayúdenme, y gracias de antemano
a) Cree una función ‘Display_Employee_Name_In_Uppercase’ que acepte el ‘Employee_ID’ de la tabla ‘Empoyees’ y devuelva el primer nombre y el apellido del empleado en mayúsculas.
<code>CREATE OR REPLACE FUNCTION DISPLAY_EMPLOYEE_NAME (EMP_ID IN NUMBER) RETURN VARCHAR2 IS EMPNAME VARCHAR(25); BEGIN SELECT FNAME ||' '|| LNAME INTO EMP_NAME FROM EMPLOYEES WHERE EMPLOYEE_ID = EMP_ID; RETURN UPPER(EMPNAME); EXCEPTION WHEN OTHERS THEN NULL; END DISPLAY_EMPLOYEE_NAME; </code>
b) Escriba un pequeño programa PL / SQL para mostrar los nombres de los empleados cuyos Employee_IDs son 107, 200 y 205.
<code>SET SERVEROUTPUT ON; DECLARE EMP_ID VARCHAR2(25); entEMPNAME VARCHAR2(25); BEGIN EMP_ID :=107,200,205; EMPNAME :=DISPLAY_EMPLOYEE_NAME(EMP_ID); DBMS_OUTPUT.PUT_LINE('EMPLOYEE NAME: '||EMPNAME); END; </code>
como la primera respuesta no es correcta, hice este código y es un trabajo pero es demasiado largo, ¿puede ser más corto?
y lo siento, no lo publiqué en una página nueva. No sé cómo publicar la respuesta varía bien.
<code>SET SERVEROUTPUT ON; DECLARE EMP_ID VARCHAR2(25); EMP_ID2 VARCHAR2(25); EMP_ID3 VARCHAR2(25); EMPNAME VARCHAR2(25); EMPNAME2 VARCHAR2(25); EMPNAME3 VARCHAR2(25); BEGIN EMP_ID :='107'; EMP_ID2 :='200'; EMP_ID3 :='205'; EMPNAME :=DISPLAY_EMPLOYEE_NAME(EMP_ID); EMPNAME2 :=DISPLAY_EMPLOYEE_NAME(EMP_ID2); EMPNAME3 :=DISPLAY_EMPLOYEE_NAME(EMP_ID3); DBMS_OUTPUT.PUT_LINE('EMPLOYEE NAME: '|| EMPNAME || ' ' || EMPNAME2 ||' ' || EMPNAME3); END; </code>