You are on page 1of 6

Se calificara Las tablas no se califican Creacin de relaciones Creacin de restricciones Usuario Owner Permisos de usuario Creacin de procedimientos Permisos

rmisos de usuario Llenado de datos (data) Creacin de Paquetes Sintaxis: Create Packaje <nombre-paquete> as Procedure <nombre-procedimiento> (Argumentos ); End; 1. Usuario Owner: Create user psolis identified by psolis; 2. Usuarios Adicionales: Create user lea identified by lea; Create user write identified by write; Create user modificar identified by modificar; Create user eliminar identified by eliminar; Create user ULW identified by ulW; Create user ULE identified by ULE; Create user todo identified by todo; 3. Creacin de Tablas desde system en el usuario owner. 3.1. Tabla Alumno. Create table psolis.alumno ( Idea char (5) primary key, Nombre varchar2(50), Paterno varchar2(50), Materno varchar2(50){ ); 3.2. Tabla Curso. Create table psolis.curso( Idec char (3) primary key, Nombre varchar2(50), Detalle varchar2(50), Costo number(8,6) );

3.3. Tabla Pagos Create table psolis.pagos( Idea char (5), Idec char (3), Pago1 number(8,2), Fechap date, Fechai date, Pago2 number(8,2), Documento char(7) primary key, foreign key (idea) references psolis.alumno(idea), foreign key (idec) references psolis.curso(idec) ); 4. Permisos a system sobre la table. GRANT INSERT, SELECT, DELETE, UPDATE ON PSOLIS.CURSO TO SYSTEM; GRANT INSERT, SELECT, DELETE, UPDATE ON PSOLIS.ALUMNO TO SYSTEM; GRANT INSERT, SELECT, DELETE, UPDATE ON PSOLIS.PAGOS TO SYSTEM; 5. Procedimientos 5.1. Pagos. 5.1.1. INSERTAR Create or replace procedure inserta_pagos ( N_Idea in PSOLIS.PAGOS.IDEA%TYPE, N_IDEC IN PSOLIS.PAGOS.IDEC%TYPE, N_PAGO1 in PSOLIS.PAGOS.PAGO1%TYPE, N_FECHAP IN PSOLIS.PAGOS.FECHAP%TYPE, N_PAGO2 in PSOLIS.PAGOS.PAGO2%TYPE, N_DOCUMENTO IN PSOLIS.PAGOS.DOCUMENTO%TYPE ) IS BEGIN INSERT INTO PSOLIS.PAGOS (PAGOS.IDEA, PAGOS.IDEC, PAGOS.PAGO1, PAGOS.FECHAP, PAGOS.PAGO2, PAGOS.DOCUMENTO) VALUES (N_IDEA,N_IDEC,N_PAGO1,N_FECHAP, N_PAGO2, N_DOCUMENTO); COMMIT; END; / 5.1.2. MODIFICAR

Create or replace procedure MODIFICA_pagos ( N_Idea in PSOLIS.PAGOS.IDEA%TYPE, N_IDEC IN PSOLIS.PAGOS.IDEC%TYPE, N_PAGO1 in PSOLIS.PAGOS.PAGO1%TYPE, N_FECHAP IN PSOLIS.PAGOS.FECHAP%TYPE, N_PAGO2 in PSOLIS.PAGOS.PAGO2%TYPE, N_DOCUMENTO IN PSOLIS.PAGOS.DOCUMENTO%TYPE

) IS BEGIN UPDATE PSOLIS.PAGOS SET PSOLIS.PAGOS.IDEA = N_IDEA, PSOLIS.PAGOS.IDEC = N_IDEC, PSOLIS.PAGOS.PAGO1 = N_PAGO1, PSOLIS.PAGOS.FECHAP = N_FECHAP, PSOLIS.PAGOS.PAGO2 = N_PAGO2 WHERE PSOLIS.PAGOS.DOCUMENTO = N_DOCUMENTO; COMMIT; END; / 5.1.3. ELIMINAR Create or replace procedure ELIMINA_pagos ( N_DOCUMENTO IN PSOLIS.PAGOS.DOCUMENTO%TYPE ) IS BEGIN DELETE FROM PSOLIS.PAGOS WHERE PSOLIS.PAGOS.DOCUMENTO = N_DOCUMENTO; COMMIT; END; /
6. PERMISOS. 6.1. USUARIO LEA.

GRANT SELECT ON PSOLIS.PAGOS TO LEA;


6.2. USUARIO WRITE.

GRANT INSERT ON PSOLIS.PAGOS TO WRITE;


6.3. USUARIO MODIFICAR.

GRANT UPDATE ON PSOLIS.PAGOS TO MODIFICAR;


6.4. USUARIO ELIMINAR.

GRANT DELETE ON PSOLIS.PAGOS TO ELIMINAR;


6.5. USUARIO ULW.

GRANT SELECT ON PSOLIS.PAGOS TO ULW; GRANT INSERT ON PSOLIS.PAGOS TO ULW;


6.6. USUARIO ULE.

GRANT SELECT ON PSOLIS.PAGOS TO ULE; GRANT INSERT ON PSOLIS.PAGOS TO ULE;


6.7. USUARIO TODO.

GRANT INSERT, SELECT, DELETE, UPDATE ON MASTER.MARCA TO TODO; 7. PAQUETE CREATE OR REPLACE PACKAGE PKG_PAGOS AS

procedure inserta_pagos ( N_Idea in PSOLIS.PAGOS.IDEA%TYPE, N_IDEC IN PSOLIS.PAGOS.IDEC%TYPE, N_PAGO1 in PSOLIS.PAGOS.PAGO1%TYPE, N_FECHAP IN PSOLIS.PAGOS.FECHAP%TYPE, N_PAGO2 in PSOLIS.PAGOS.PAGO2%TYPE, N_DOCUMENTO IN PSOLIS.PAGOS.DOCUMENTO%TYPE ); procedure MODIFICA_pagos ( N_Idea in PSOLIS.PAGOS.IDEA%TYPE, N_IDEC IN PSOLIS.PAGOS.IDEC%TYPE, N_PAGO1 in PSOLIS.PAGOS.PAGO1%TYPE, N_FECHAP IN PSOLIS.PAGOS.FECHAP%TYPE, N_PAGO2 in PSOLIS.PAGOS.PAGO2%TYPE, N_DOCUMENTO IN PSOLIS.PAGOS.DOCUMENTO%TYPE ); procedure ELIMINA_pagos ( N_DOCUMENTO IN PSOLIS.PAGOS.DOCUMENTO%TYPE ); END PKG_PAGOS; / CREATE OR REPLACE PACKAGE BODY PKG_ PAGOS AS procedure inserta_pagos( N_Idea in PSOLIS.PAGOS.IDEA%TYPE, N_IDEC IN PSOLIS.PAGOS.IDEC%TYPE, N_PAGO1 in PSOLIS.PAGOS.PAGO1%TYPE, N_FECHAP IN PSOLIS.PAGOS.FECHAP%TYPE, N_PAGO2 in PSOLIS.PAGOS.PAGO2%TYPE, N_DOCUMENTO IN PSOLIS.PAGOS.DOCUMENTO%TYPE ) IS BEGIN INSERT INTO PSOLIS.PAGOS (PAGOS.IDEA, PAGOS.IDEC, PAGOS.PAGO1, PAGOS.FECHAP, PAGOS.PAGO2, PAGOS.DOCUMENTO) VALUES (N_IDEA,N_IDEC,N_PAGO1,N_FECHAP, N_PAGO2, N_DOCUMENTO); COMMIT; END inserta_pagos; procedure MODIFICA_pagos ( N_Idea in PSOLIS.PAGOS.IDEA%TYPE, N_IDEC IN PSOLIS.PAGOS.IDEC%TYPE, N_PAGO1 in PSOLIS.PAGOS.PAGO1%TYPE,

N_FECHAP IN PSOLIS.PAGOS.FECHAP%TYPE, N_PAGO2 in PSOLIS.PAGOS.PAGO2%TYPE, N_DOCUMENTO IN PSOLIS.PAGOS.DOCUMENTO%TYPE ) IS BEGIN UPDATE PSOLIS.PAGOS SET PSOLIS.PAGOS.IDEA = N_IDEA, PSOLIS.PAGOS.IDEC = N_IDEC, PSOLIS.PAGOS.PAGO1 = N_PAGO1, PSOLIS.PAGOS.FECHAP = N_FECHAP, PSOLIS.PAGOS.PAGO2 = N_PAGO2 WHERE PSOLIS.PAGOS.DOCUMENTO = N_DOCUMENTO; COMMIT; END MODIFICA_pagos; procedure ELIMINA_pagos ( N_DOCUMENTO IN PSOLIS.PAGOS.DOCUMENTO%TYPE ) IS BEGIN DELETE FROM PSOLIS.PAGOS WHERE PSOLIS.PAGOS.DOCUMENTO = N_DOCUMENTO; COMMIT; END ELIMINA_pagos; END PKG_PAGOS; / PACKAGE: CREATE PACKAGE <NOMBRE PAQUETE> IS PROCEDURE NOMBRE_PROCEDIMIENTO ( ); END; / CREATE PACKAGE BODY <NOMBRE_PAQUETE> IS PROCEDURE <NOMBRE_PROCEDIMIENTO> ( ARGUMENTOS DE SP ) IS BEGIN *----INTRUCCIONES SP *---

COMMIT; END <NOMBRE_ PROCEDIMIENTO>; END; / OTORGAR PERMISO GRAN EXECUTE <NOMBRE_PAQUETE>.<NOMBRE_PROCEDIMIENTO> TO <USER>; EL USUARIO DEBE HABER SIDO CREADO Y DEBE CONTAR CON EL PERMISO.

You might also like