El documento describe los pasos para crear un procedimiento almacenado llamado "INGRESAR_CURSO" en Oracle que inserta registros en una tabla CURSO. El procedimiento inserta el registro solo si el campo CREDITOS es menor a 15, de lo contrario realiza un rollback. Luego ejecuta el procedimiento para dos registros, uno con créditos menor a 15 que se inserta, y otro mayor que no se inserta debido al rollback.
1. DESDE LA VANTANA DE COMANDOS SQL DE ORACLE, ESCRIBIR LAS SIGUIENTES INSTRUCCIONES,
EL EJEMPLO ESTA CONSIDERANDO UNA TABLA DENOMINADA CURSO CON TRES CAMPOS: CODIGO
DE TIPO NUMBER, NOMBRE NOMBRE DE TIPO CHAR(25) Y CREDITOS DE TIPO NUMBER), PUEDEN
REALIZAR EL EJERCICIO CON CUALQUIER OTRA TABLA CREADA O CREAR LA TABLA CURSO QUE
PERTENEZCA A UNA BD ESCUELA.
A) CREATE O REPLACE PROCEDURE “INGRESAR_CURSO”
(CODIGO IN NUMBER, NOMBRE IN CHAR, CREDITOS IN NUMBER) IS
BEGIN
INSERT INTO CURSO VALUES (CODIGO, NOMBRE, CREDITOS) ;
IF CREDITOS < 15 THEN
COMMIT;
ELSE
ROLLBACK;
END IF;
END;
SELECCIONAR LA OPCIÓN EJECUTAR (run)
AHORA ESCRIBIR:
B) BEGIN “INGRESAR_CURSO” (797, “SEMINARIO DE SISTEMAS”, 3)
END;
SELECCIONAR LA OPCIÓN EJECUTAR
AHORA ESCRIBIR
C) SELECT * FROM CURSO;
SE DEBE MOSTRAR EL REGISTRO INSERTADO;
VOLVER A ESCRIBIR:
D) BEGIN “INGRESAR_CURSO” (798, “SEMINARIO DE INVESTIGACIÓN”,17)
END; (EJECUTAR)
E) SELECT * FROM CURSO; EJECUTAR EL COMANDO
COMO PODRÁN OBSERVAR EL REGISTRO NO FUE INSERTADO, ¿POR QUÉ?