Está en la página 1de 9

LABORATORIO 2.

ORACLE - BASE DE DATOS


SECRETARIA DE GOBIERNO

BASE DE DATOS SECRETARIA DE GOBIERNO

Este sistema de información registra las querellas, detenciones y


contravenciones ocurridas en las inspecciones de policía del municipio
“San Antonio del SENA”.

FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje


Base de datos secretaria de gobierno - ORACLE

SCRIPT POSTGRESQL

CONNECT SYSTEM/SENA
CREATE USER QUERELLAS IDENTIFIED BY SENA DEFAULT TABLESPACE USERS
QUOTA ON USERS UNLIMITED;
GRANT CONNECT, RESOURCE TO QUERELLAS;
CONNECT QUERELLAS/SENA

CREATE TABLE CONTRAVENCION (


idCONTRAVENCION NUMBER NOT NULL ,
FECHA DATE NULL,
TIPO NUMBER NULL ,
HECHOS VARCHAR2(4000) NULL,
ESTADO NUMBER NULL ,
PRIMARY KEY(idCONTRAVENCION)
);

CREATE TABLE INSPECCION (


idINSPECCION NUMBER,
NOMBRE VARCHAR(30) NULL,
PRIMARY KEY(idINSPECCION)
);

CREATE TABLE QUERELLA (


idQUERELLA NUMBER NOT NULL ,
idINSPECCION NUMBER NOT NULL ,
FECHA DATE NULL,
ASUNTO VARCHAR2(4000) NULL,
HECHOS VARCHAR2(4000) NULL,
ESTADO NUMBER NULL ,
PRIMARY KEY(idQUERELLA),
FOREIGN KEY(idINSPECCION)
REFERENCES INSPECCION(idINSPECCION)
);

CREATE TABLE INVOLUCRADO (


idINVOLUCRADO NUMBER NOT NULL ,
idCONTRAVENCION NUMBER NOT NULL ,
NOMBRE VARCHAR(60) NULL,
IDENTIFICACION VARCHAR(30) NULL,
TIPODOCUMENTO NUMBER NULL ,
TIPOACTUACION NUMBER NULL ,
PRIMARY KEY(idINVOLUCRADO, idCONTRAVENCION),
FOREIGN KEY(idCONTRAVENCION)
REFERENCES CONTRAVENCION(idCONTRAVENCION)
);

2
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Base de datos secretaria de gobierno - ORACLE

CREATE TABLE DETECCION (


idDETECCION NUMBER NOT NULL ,
idINSPECCION NUMBER NOT NULL ,
FECHA DATE NULL,
MOTIVO VARCHAR2(4000) NULL,
TIPO NUMBER NULL ,
HECHOS VARCHAR2(4000) NULL,
PRIMARY KEY(idDETECCION),
FOREIGN KEY(idINSPECCION)
REFERENCES INSPECCION(idINSPECCION)
);

CREATE TABLE CONTRACTUACION (


idCONTRACTUACION NUMBER NOT NULL ,
idCONTRAVENCION NUMBER NOT NULL ,
FECHA DATE NULL,
PRIMARY KEY(idCONTRACTUACION, idCONTRAVENCION),
FOREIGN KEY(idCONTRAVENCION)
REFERENCES CONTRAVENCION(idCONTRAVENCION)
);

CREATE TABLE ACTUACION (


idACTUACION NUMBER NOT NULL ,
idQUERELLA NUMBER NOT NULL ,
FECHA DATE NULL,
HECHOS VARCHAR2(4000) NULL,
ESTADO NUMBER NULL ,
PRIMARY KEY(idACTUACION, idQUERELLA),
FOREIGN KEY(idQUERELLA)
REFERENCES QUERELLA(idQUERELLA)
);

CREATE TABLE DEMANDADO (


idDEMANDADO NUMBER NOT NULL ,
idQUERELLA NUMBER NOT NULL ,
NOMBRE VARCHAR(60) NULL,
IDENTIFICACION VARCHAR(30) NULL,
TIPODOCUMENTO NUMBER NULL ,
PRIMARY KEY(idDEMANDADO, idQUERELLA),
FOREIGN KEY(idQUERELLA)
REFERENCES QUERELLA(idQUERELLA)
);

CREATE TABLE DEMANDANTE (


idDEMANDANTE NUMBER NOT NULL ,

3
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Base de datos secretaria de gobierno - ORACLE

idQUERELLA NUMBER NOT NULL ,


NOMBRE VARCHAR(60) NULL,
IDENTIFICACION VARCHAR(30) NULL,
TIPODOCUMENTO NUMBER NULL ,
PRIMARY KEY(idDEMANDANTE, idQUERELLA),
FOREIGN KEY(idQUERELLA)
REFERENCES QUERELLA(idQUERELLA)
);

CREATE TABLE INSPECCION_has_CONTRAVENCION (


idINSPECCION NUMBER NOT NULL ,
idCONTRAVENCION NUMBER NOT NULL ,
INSPECTOR VARCHAR(60) NULL,
PRIMARY KEY(idINSPECCION, idCONTRAVENCION),
FOREIGN KEY(idINSPECCION)
REFERENCES INSPECCION(idINSPECCION),
FOREIGN KEY(idCONTRAVENCION)
REFERENCES CONTRAVENCION(idCONTRAVENCION)
);

CREATE TABLE PERSONA (


idPERSONA NUMBER NOT NULL ,
idDETECCION NUMBER NOT NULL ,
APELLIDO VARCHAR(30) NULL,
NOMBRES VARCHAR(30) NULL,
IDENTIFICACION VARCHAR(30) NULL,
TIPODOCUMENTO NUMBER NULL ,
PRIMARY KEY(idPERSONA, idDETECCION),
FOREIGN KEY(idDETECCION)
REFERENCES DETECCION(idDETECCION)
);

--1=ORDEN PUBLICO 2=COMUNITARIO 3=FAMILIAR 4=OTROS


ALTER TABLE CONTRAVENCION ADD CONSTRAINT CONTRTIPOCHK
CHECK(TIPO IN(1,2,3,4));
--1=ABIERTA 2=PENDIENTE 3=CERRADA
ALTER TABLE CONTRAVENCION ADD CONSTRAINT CONTRESTADOCHK
CHECK(ESTADO IN(1,2,3));
--1=ABIERTA 2=PENDIENTE 3=CERRADA
ALTER TABLE QUERELLA ADD CONSTRAINT QUERETIPORCHK CHECK(ESTADO
IN(1,2,3));
ALTER TABLE INVOLUCRADO ADD CONSTRAINT INVOLIDENTIBK
UNIQUE(IDENTIFICACION);
--1=CEDULA 2=TARJETA IDENTIDAD 3=CEDULA DE EXTRANJERIA 4=PASA-
PORTE 5=NUI

4
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Base de datos secretaria de gobierno - ORACLE

ALTER TABLE QUERELLA ADD CONSTRAINT QUERETIPORCHK


CHECK(TIPODOCUMENTO IN(1,2,3,4,5));

CREATE SEQUENCE SEQ_CONTRAVENCION


MINVALUE 1
MAXVALUE 1000000
START WITH 1
INCREMENT BY 1;

CREATE OR REPLACE TRIGGER TR_CONTRAVENCION


BEFORE INSERT ON CONTRAVENCION FOR EACH ROW
DECLARE
NUMERO NUMBER;
BEGIN
SELECT SEQ_CONTRAVENCION.NEXTVAL INTO NUMERO FROM DUAL;
:NEW.idCONTRAVENCION:=NUMERO;
END;

CREATE SEQUENCE SEQ_INSPECCION


MINVALUE 1
MAXVALUE 1000000
START WITH 1
INCREMENT BY 1;

CREATE OR REPLACE TRIGGER TR_INSPECCION


BEFORE INSERT ON INSPECCION FOR EACH ROW
DECLARE
NUMERO NUMBER;
BEGIN
SELECT SEQ_INSPECCION.NEXTVAL INTO NUMERO FROM DUAL;
:NEW.idINSPECCION:=NUMERO;
END;

CREATE SEQUENCE SEQ_QUERELLA


MINVALUE 1
MAXVALUE 1000000
START WITH 1
INCREMENT BY 1;

CREATE OR REPLACE TRIGGER TR_QUERELLA


BEFORE INSERT ON QUERELLA FOR EACH ROW
DECLARE
NUMERO NUMBER;

5
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Base de datos secretaria de gobierno - ORACLE

BEGIN
SELECT SEQ_QUERELLA.NEXTVAL INTO NUMERO FROM DUAL;
:NEW.idQUERELLA:=NUMERO;
END;

CREATE SEQUENCE SEQ_INVOLUCRADO


MINVALUE 1
MAXVALUE 1000000
START WITH 1
INCREMENT BY 1;

CREATE OR REPLACE TRIGGER TR_INVOLUCRADO


BEFORE INSERT ON INVOLUCRADO FOR EACH ROW
DECLARE
NUMERO NUMBER;
BEGIN
SELECT SEQ_INVOLUCRADO.NEXTVAL INTO NUMERO FROM DUAL;
:NEW.idINVOLUCRADO :=NUMERO;
END;

CREATE SEQUENCE SEQ_DETECCION


MINVALUE 1
MAXVALUE 1000000
START WITH 1
INCREMENT BY 1;

CREATE OR REPLACE TRIGGER TR_DETECCION


BEFORE INSERT ON DETECCION FOR EACH ROW
DECLARE
NUMERO NUMBER;
BEGIN
SELECT SEQ_DETECCION.NEXTVAL INTO NUMERO FROM DUAL;
:NEW.idDETECCION :=NUMERO;
END;

CREATE SEQUENCE SEQ_CONTRACTUACION


MINVALUE 1
MAXVALUE 1000000
START WITH 1
INCREMENT BY 1;

CREATE OR REPLACE TRIGGER TR_CONTRACTUACION


BEFORE INSERT ON CONTRACTUACION FOR EACH ROW

6
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Base de datos secretaria de gobierno - ORACLE

DECLARE
NUMERO NUMBER;
BEGIN
SELECT SEQ_CONTRACTUACION.NEXTVAL INTO NUMERO FROM DUAL;
:NEW.idCONTRACTUACION :=NUMERO;
END;

CREATE SEQUENCE SEQ_ACTUACION


MINVALUE 1
MAXVALUE 1000000
START WITH 1
INCREMENT BY 1;

CREATE OR REPLACE TRIGGER TR_ACTUACION


BEFORE INSERT ON ACTUACION FOR EACH ROW
DECLARE
NUMERO NUMBER;
BEGIN
SELECT SEQ_ACTUACION.NEXTVAL INTO NUMERO FROM DUAL;
:NEW.idACTUACION :=NUMERO;
END;

CREATE SEQUENCE SEQ_DEMANDADO


MINVALUE 1
MAXVALUE 1000000
START WITH 1
INCREMENT BY 1;

CREATE OR REPLACE TRIGGER TR_DEMANDADO


BEFORE INSERT ON DEMANDADO FOR EACH ROW
DECLARE
NUMERO NUMBER;
BEGIN
SELECT SEQ_DEMANDADO.NEXTVAL INTO NUMERO FROM DUAL;
:NEW.idDEMANDADO :=NUMERO;
END;

CREATE SEQUENCE SEQ_DEMANDANTE


MINVALUE 1
MAXVALUE 1000000
START WITH 1
INCREMENT BY 1;

7
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Base de datos secretaria de gobierno - ORACLE

CREATE OR REPLACE TRIGGER TR_DEMANDANTE


BEFORE INSERT ON DEMANDANTE FOR EACH ROW
DECLARE
NUMERO NUMBER;
BEGIN
SELECT SEQ_DEMANDANTE.NEXTVAL INTO NUMERO FROM DUAL;
:NEW.idDEMANDANTE :=NUMERO;
END;

CREATE SEQUENCE SEQ_PERSONA


MINVALUE 1
MAXVALUE 1000000
START WITH 1
INCREMENT BY 1;

CREATE OR REPLACE TRIGGER TR_PERSONA


BEFORE INSERT ON PERSONA FOR EACH ROW
DECLARE
NUMERO NUMBER;
BEGIN
SELECT SEQ_PERSONA.NEXTVAL INTO NUMERO FROM DUAL;
:NEW.idPERSONA :=NUMERO;
END;

INSERT INTO CONTRAVENCION(FECHA,TIPO,HECHOS,ESTADO)


VALUES(SYSDATE,1,’ALICORAMIENTO EN VIA PUBLICA’,1);
INSERT INTO CONTRAVENCION(FECHA,TIPO,HECHOS,ESTADO)
VALUES(SYSDATE,1,’RIÑA CALLEJERA’,1);
INSERT INTO CONTRAVENCION(FECHA,TIPO,HECHOS,ESTADO)
VALUES(SYSDATE,1,’DESORDEN EN LA VIA PUBLICA’,1);
INSERT INTO CONTRAVENCION(FECHA,TIPO,HECHOS,ESTADO)
VALUES(SYSDATE,3,’PELEA FAMILIAR’,1);

8
FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Oracle, Java, Oracle Logo, son marcas registradas
propiedades de Oracle. Copyright ©

PostgreSQL, PostgreSQL Logo, son marcas registradas


propiedades de PostgreSQL Global Development Group.
Copyright ©

Microsoft SQL Server, Microsoft SQL Server Logo, son marcas

Registered trademark
registradas propiedades de Microsoft. Copyright ©

Atribución, no comercial, compartir igual

Este material puede ser distribuido, copiado


y exhibido por terceros si se muestra en los
créditos. No se puede obtener ningún
ben rcial y las obras derivadas
tienen que estar bajo los mismos términos
de licencia que el trabajo original.

FAVA - Formación en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje

También podría gustarte