Ejercicios Bloques Anonimos
Ejercicios Bloques Anonimos
Ejercicios Bloques Anonimos
NUMBER(2)
Varchar2(100)
Varchar2(100)
Como sigue:
CREATE TABLE resultados(
Ejercicio
NUMBER(2),
Resultado1 Varchar2(100),
Resultado2 Varchar2(100))
/
Ejercicio 1
Insertar en la tabla resultados 100 filas. En la primera columna de la tabla se insertar
el nmero de este ejercicio, en la segunda columns un ndice secuencial (1, 2, 3...)
indicando el nmero a comprobar y en la tercera columna un comentario indicando si
el nmero generado es par o impar. Por ltimo, validar la transaccin para guardar los
resultados en la tabla.
Ejercicio 2
Insertar en la tabla resultados los siguientes valores. En la primera columna el nmero
de ejercicio (2). En la segunda columns el nmero de empleados que fueron dados de
alta en cada da de la semana. En la tercera columna la cadena empleados fueron
contratados en ( da de la semana Lunes, martes,.). Por ltimo, validar la
transaccin para guardar los resultados en la tabla.
geamind
Solucin para Ejercicio 1
DECLARE
resto NUMBER(2);
BEGIN
FOR i IN 1..100
LOOP
resto := MOD(i,2);
IF resto = 0 THEN
INSERT INTO resultados VALUES (1,TO_CHAR(i,'99'),'Es par');
ELSE
INSERT INTO resultados VALUES (1,TO_CHAR(i,'99'),'Es impar');
END IF;
END LOOP;
COMMIT;
END;
/
Solucin para el Ejercicio 2
DECLARE
numero NUMBER;
dia VARCHAR2(10);
BEGIN
FOR i IN 1..7
LOOP
Select COUNT(*) INTO numero FROM employees
WHERE TO_CHAR(hire_date,'D')
= i;
dia := Case i
WHEN 1 THEN 'Lunes'
WHEN 2 THEN 'Martes'
WHEN 3 THEN 'Mircoles'
WHEN 4 THEN 'Jueves'
WHEN 5 THEN 'Viernes'
WHEN 6 THEN 'Sbado'
WHEN 7 THEN 'Domingo'
END;
INSERT INTO resultados VALUES (2,TO_CHAR(numero,'999'),'empleados fueron
contratados en ' || dia);
END LOOP;
COMMIT;
END;
/