Está en la página 1de 3

DROP TABLE BANCO CASCADE CONSTRAINTS;

DROP TABLE SUCURSALES CASCADE CONSTRAINTS;


DROP TABLE CONTRATAN CASCADE CONSTRAINTS;
DROP TABLE VIGILANTES CASCADE CONSTRAINTS;
DROP TABLE BANDAS CASCADE CONSTRAINTS;
DROP TABLE LADRONES CASCADE CONSTRAINTS;
DROP TABLE ATRACO CASCADE CONSTRAINTS;

//PUNTO 3 //
CREATE TABLE BANCOS(
CODIGO NUMBER(7)
CONSTRAINT BAN_COD_PK PRIMARY KEY,
NOMBRE VARCHAR2(30)
CONSTRAINT BAN_NOM_NN NOT NULL);

CREATE TABLE SUCURSALES(


CODIGO NUMBER(7)
CONSTRAINT SUC_COD_PK PRIMARY KEY,
NOMBRE VARCHAR2(30)
CONSTRAINT SUC_NOM_NN NOT NULL,
DIRECCION_DOMICILIO(60)
CONSTRAINT SUC_DIR_NN NOT NULL,
NUMERO_EMPLEADO(1000)
CONSTRAINT SUC_NE_NN NOT NULL,
CODIGO_BANCO(7)
CONSTRAINT SUC_CODBAN_FK REFERENCE BANCO(CODIGO),
CONSTRAINT SUC_CODBA_NN NOT NULL);

CREATE TABLE VIGILANTES(


CODIGO NUMBER(7)
CONSTRAINT VI_CO_PK PRIMARY KEY,
NOMBRE VARCHAR2(30)
CONSTRAINT VI_NO_NN NOT NULL,
EDAD NUMBER(3)
CONSTRAINT VI_ED_NN NOT NULL );

CREATE TABLE CONTRATAN(


CODIGO_SUCURSAL(7)
CONSTRAINT CON_SU_FK REFERENCE SUCURSALES(CODIGO),
CODIGO_VIGILANTE(7)
CONSTRAINT CON_VI_FK REFERENCE VIGILANTES(CODIGO),
ESTADO_DE_ARMA CHAR(2)
CONSTRAINT CON_ESTADO_CK CHECK(ESTADO_DE_ARMA IN('SI', 'NO'),
FECHA_INI DATE,
FECHA_FIN DATE );

CREATE TABLE BANDAS (


NUMERO_BANDA NUMBER(7)
CONSTRAINT BAND_NROBANDAS_PK PRIMARY KEY,
NOMBRE VARCHAR2(30)
CONSTRAINT BAND_NOM_NN NOT NULL,
NUMERO_MIEMBROS NUMBER(200)
CONSTRAINT BAND_MIE_NN NOT NULL);

CREATE TABLE LADRONES(


CODIGO NUMBER(7)
CONSTRAINT LA_COD_PK PRIMARY KEY,
NOMBRE VARCHAR2(30)
CONSTRAINT LA_NOM_NN NOT NULL,
ALIAS VARCHAR2(15),
NUMERO_BANDA_2 NUMBER(7)
CONSTRAINT LA_NUMERO_BAND_2_FK REFERENCES BANDAS(NUMERO_BANDA));

CREATE TABLE ATRACO(


CODIGO_SUCURSAL NUMBER(7),
CODIGO_LADORNES NUMBER(7),
FECHA_ATRACO DATE
CONSTRAINT ATR_SU_NN NOT NULL,
CONSTRAINT ATR_SUR_SU_COD_FK FOREIGN KEY(CODIGO_SUCURSAL)REFERENCES
SURCUSALES(CODIGO),
CONSTRAINT ATR_SUR_SU_COD_AT_FK FOREIGN KEY(CODIGO_LADRONES)REFERENCES
LADRONES(CODIGO),
CONSTRAINT ATR_SUR_COD_PK PRIMARY KEY(CODIGO_SUCURSAL,CODIGO_LADRONES));

//PUNTO 4//

INSERT INTO BANCO VALUES (12345, 'BANCO COMULTRASAN');


INSERT INTO BANCO VALUES (12346, 'BANCO BANCOLOMBIA');
INSERT INTO BANCO VALUES (12347, 'BANCO BBVA');
INSERT INTO BANCO VALUES (12348, 'BANCO BANCAMIA');
INSERT INTO BANCO VALUES (12349, 'BANCO BANCOLDEX');

INSERT INTO SUCURSALES VALUES (54321,'SUCURSAL CENTRO','CARRERA 43', 60, 12345);


INSERT INTO SUCURSALES VALUES (54322,'SUCURSAL NORTE','CARRERA 51', 50, 12346);
INSERT INTO SUCURSALES VALUES (54323,'SUCURSAL CENTRO2','CARRERA 30', 70, 12347);
INSERT INTO SUCURSALES VALUES (54324,'SUCURSAL CENTROHISTORICO','CARRERA 45', 40,
12348);
INSERT INTO SUCURSALES VALUES (54325,'SUCURSAL PARQUE','CARRERA 49', 10, 12349);

INSERT INTO VIGILANTES VALUES (98766,'LUIS MEJIA', 45);


INSERT INTO VIGILANTES VALUES (98755,'EDUARDO MEDRANO', 30);
INSERT INTO VIGILANTES VALUES (98744,'ADOLFO VERGARA', 48);
INSERT INTO VIGILANTES VALUES (98733,'ALEJANDRO MANOTAS', 25);
INSERT INTO VIGILANTES VALUES (98722,'ANGELICA LOZANO', 23);

INSERT INTO CONTRATAN VALUES (54321, 98766, TO_DATE('15-FEB-2000','DD-MON-


YYYY'),'SI');
INSERT INTO CONTRATAN VALUES (54322, 98755, TO_DATE('30-MAR-2001','DD-MON-
YYYY'),'SI');
INSERT INTO CONTRATAN VALUES (54323, 98744, TO_DATE('28-MAR-2017','DD-MON-
YYYY'),'SI');
INSERT INTO CONTRATAN VALUES (54324, 98733, TO_DATE('25-NOV-2002','DD-MON-
YYYY'),'NO');
INSERT INTO CONTRATAN VALUES (54325, 98722, TO_DATE('18-ENE-2005','DD-MON-
YYYY'),'NO');

INSERT INTO BANDAS VALUES (85232,'CARRIZAL', 31);


INSERT INTO BANDAS VALUES (85233,'AJIMOLIDO', 150);
INSERT INTO BANDAS VALUES (85255,'KUERVO', 200);
INSERT INTO BANDAS VALUES (85211,'TUPAPA', 130);
INSERT INTO BANDAS VALUES (85244,'LOKILLOS', 60);

INSERT INTO LADRONES VALUES (75332,'MARCO TAPIAS','EL MONO',85232);


INSERT INTO LADRONES VALUES (75311,'MARIO LOPEZ','PAISA ',85233);
INSERT INTO LADRONES VALUES (75344,'MARLON MORENO','EL CAPO',85255);
INSERT INTO LADRONES VALUES (75355,'ROBER','FLACO',85211);
INSERT INTO LADRONES VALUES (75366,'SALVADOR RUIZ','GRILLO',85244);
INSERT INTO ATRACO VALUES(54321, 75332, TO_DATE('14-ENE-2000','DD-MON-YYYY'));
INSERT INTO ATRACO VALUES(54322, 75311, TO_DATE('05-FEB-2005','DD-MON-YYYY'));
INSERT INTO ATRACO VALUES(54323, 75344, TO_DATE('23-MAR-2017','DD-MON-YYYY'));
INSERT INTO ATRACO VALUES(54324, 75355, TO_DATE('22-NOV-2018','DD-MON-YYYY'));
INSERT INTO ATRACO VALUES(54325, 75366, TO_DATE('06-DIC-1999','DD-MON-YYYY'));

//VISTA PUNTO 5//


CREATE OR REPLACE VIEW
ATRACO_UNO(NOMBRE_LADRONES,ALIAS_LADRONES,NOMBRE_BANDA,NOMBRE_SUCURSAL) AS SELECT
L.NOMBRE,L.ALIAS,S.NOMBRE,B.NOMBRE
FROM ATRACO A, LADRONES L, BANDAS B, SUCURSALES S WHERE
S.CODIGO=A.CODIGO_SUCURSALES AND L.CODIGO=A.CODIGO_LADRONES AND
B.NUMERO_BANDA=L.NUMERO_BANDA_2
WITH READ ONLY;

//VISTA PUNTO 6//

CREATE OR REPLACE VIEW


ATRACO_DOS(NOMBRE_LADRONES,ALIAS_LADRONES,NOMBRE_BANDA,NOMBRE_SUCURSAL,NOMBRE_VIGIL
ANTE,FECHA_ATRACO) AS SELECT L.NOMBRE,L.ALIAS,S.NOMBRE,V.NOMBRE,A.FECHA_ATRACO
FROM ATRACO A, LADRONES L, CONTRATAN C, SUCURSALES S, VIGILANTE V WHERE
S.CODIGO=C.CODIGO_SUCURSAL AND V.CODIGO=C.CODIGO_VIGILANTE AND
S.CODIGO=A.CODIGO_SUCURSALES AND L.CODIGO=A.CODIGO_LADRONES
AND ((A.FECHA_ATRACO>C.FECHA_INI AND A.FECHA_ATRACO<C.FECHA_FIN) OR
(A.FECHA_ATRACO>C.FECHA_INI AND A.FECHA_ATRACO<C.FECHA_FIN IS NULL));

//USUARIO Y PRIVILEGIOS 5//

CREATE USER PEDRO_RAMIREZ IDENTIFIED BY p;


GRANT CONNECT TO PEDRO_RAMIREZ;

GRANT SELECT ON ATRACOS_UNO TO PEDRO_RAMIREZ;

//USUARIO Y PRIVILEGIOS 6//

CREATE USER AGENTES IDENTIFIED BY a;


GRANT CONNECT TO AGENTES;

GRANT SELECT ON ATRACOS_DOS TO AGENTES;

//CONEXION PUNTO 5//

CONNECT PEDRO_RAMIREZ/p;
SELECT * FROM SYSTEM.ATRACOS UNO;

//CONEXION PUNTO 5//

CONNECT AGENTES/a;
SELECT * FROM SYSTEM.ATRACOS_DOS;

También podría gustarte