Escolar Documentos
Profissional Documentos
Cultura Documentos
/*PREGUNTA 1
En un bloque PL/SQL, realice la bsqueda simple por cdigo de departamento (Utilizar &) y muestre sus datos. En caso
no existiese, usando excepciones enve un mensaje 'CODIGO DE DEPARTAMENTO NO EXISTE' mediante el gestor
NO_DATA_FOUND.*/
declare
xdeptno dept.deptno%TYPE;
xdname dept.dname%TYPE;
xloc dept.loc%TYPE;
BEGIN
xdeptno:=60;
INTO xdeptno,xdname,xloc
DBMS_OUTPUT.PUT_LINE('Codigo:'||xdeptno);
DBMS_OUTPUT.PUT_LINE('Nombre:'||xdname);
DBMS_OUTPUT.PUT_LINE('Locacion:'||xloc);
EXCEPTION
END;
/*PREGUNTA 2
En un bloque PL/SQL, realice una insercin de registros a la tabla empleado. Usando excepciones predefinidas enve los
siguentes mensajes
DECLARE
V_EMPNO EMP.EMPNO%TYPE;
V_ENAME EMP.ENAME%TYPE;
V_JOB EMP.JOB%TYPE;
V_MGR EMP.MGR%TYPE;
V_HIREDATE EMP.HIREDATE%TYPE;
V_SAL EMP.SAL%TYPE;
V_COMM EMP.COMM%TYPE;
V_DEPTNO EMP.DEPTNO%TYPE;
BEGIN
V_EMPNO:='2302';
V_ENAME:='AVILA';
V_JOB:='DESING';
V_MGR:='1703';
V_HIREDATE:=SYSDATE;
V_SAL:='1500';
V_COMM:=NULL;
V_DEPTNO:='60';
VALUES(V_EMPNO,V_ENAME,V_JOB,V_MGR,V_HIREDATE,V_SAL,V_COMM,V_DEPTNO);
COMMIT;
EXCEPTION
DBMS_OUTPUT.PUT_LINE('ERROR DESCONOCIDO');
END;
Escribir un bloque PL/SQL que reciba una cadena y visualice el nombre del departamento (dname) y el codigo del
departamento (deptno) de todos los departamentos cuyo nombre contenga
la cadena especificada (variable sustitucion "&"). Al finalizar visualizar el numero de departamentos mostrados. en caso
no exista ningun departamento con dicha cadena, generar
una Excepcion que lance el mensaje "Dpartamento no existe" en consola. (Utilizar variable tipo TYPE).*/
DECLARE
INICIAL varchar2(10):='&'||'&INICIAL'||'&';
total_filas integer;
mensajeerror EXCEPTION;
BEGIN
DECLARE
CURSOR c_nuevocursor IS
BEGIN
FOR X IN C_NUEVOCURSOR
LOOP
END LOOP;
END;
BEGIN
IF (TOTAL_FILAS>=1) THEN
ELSE
RAISE mensajeerror;
END IF;
END;
END;
/*PREGUNTA 4
Elaborar un bloque PL/SQL que muestre el empno, ename y dname de todos los empleados donde su codigo (empno)
sea par. Utilizar Cursores.*/
DECLARE
xempno emp.empno%type;
xename emp.ename%type;
xdname dept.dname%type;
BEGIN
DECLARE
CURSOR c_nuevocursor IS
WHERE MOD(E.EMPNO,2) = 0;
BEGIN
FOR X IN C_NUEVOCURSOR
LOOP
END LOOP;
END;
END;