Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE TABLE ALUMNO(
- CODALUMNO INTEGER CONSTRAINT PK_CODALUMNO PRIMARY KEY,
- NOMBRE VARCHAR2(100),
- APELLIDO VARCHAR2(100),
- FECHA_NACIMIENTO DATE,
- SEXO VARCHAR2(1),
- DOMICILIO VARCHAR2(200),
- ENCARGADO VARCHAR2(100),
- TELEFONO INTEGER
- )
- /
- CREATE TABLE GRADO(
- CODIGOGRADO INTEGER CONSTRAINT PK_CODGRADO PRIMARY KEY,
- NOMBRE VARCHAR2(50) NOT NULL
- )
- /
- CREATE TABLE ESPECIALIDAD(
- CODESPECIALIDAD INTEGER CONSTRAINT PK_CODESPECIALIDAD PRIMARY KEY,
- NOMBRE VARCHAR(100) NOT NULL
- )
- /
- CREATE TABLE SECCIONES(
- CODSECCION INTEGER CONSTRAINT PK_CODSECCION PRIMARY KEY,
- SECCION VARCHAR2(4) NOT NULL
- )
- /
- CREATE TABLE MATRICULA(
- IDMATRICULA INTEGER CONSTRAINT PK_MATRICULA PRIMARY KEY,
- CODALUMNO INTEGER NOT NULL CONSTRAINT FK_CODALUMNO
- REFERENCES ALUMNO(CODALUMNO),
- CODIGOGRADO INTEGER NOT NULL CONSTRAINT FK_CODGRADO
- REFERENCES GRADO(CODIGOGRADO),
- CODSECCION INTEGER NOT NULL CONSTRAINT FK_CODSECCION
- REFERENCES SECCIONES(CODSECCION),
- CODESPECIALIDAD INTEGER NOT NULL CONSTRAINT FK_CODESPECIALIDAD
- REFERENCES ESPECIALIDAD(CODESPECIALIDAD),
- FECHA_MATRICULA DATE DEFAULT(SYSDATE)
- )
- /
- CREATE TABLE MATERIAS(
- CODMATERIA INTEGER CONSTRAINT PK_CODMATERIA PRIMARY KEY,
- NOMBRE VARCHAR2(100) NOT NULL
- )
- /
- CREATE TABLE DOCENTE(
- CODDOCENTE INTEGER CONSTRAINT PK_DOCENTE PRIMARY KEY,
- NOMBRE VARCHAR2(100) NOT NULL,
- APELLIDO VARCHAR2(100) NOT NULL,
- FECHA_NACIMIENTO DATE NOT NULL,
- SEXO VARCHAR2(100) NOT NULL,
- DOMICILIO VARCHAR2(200) NOT NULL,
- TELEFONO INTEGER NOT NULL
- )
- /
- CREATE TABLE PERIODOS(
- CODPERIODO INTEGER CONSTRAINT PK_CODPERIODO PRIMARY KEY,
- PERIODOO VARCHAR(50)
- )
- /
- CREATE TABLE CARGA_DOCENTE(
- ID INTEGER CONSTRAINT PK_ID_CARGAD PRIMARY KEY,
- CODDOCENTE INTEGER NOT NULL CONSTRAINT FK_CODDOCENTE
- REFERENCES DOCENTE(CODDOCENTE),
- CODMATERIA INTEGER NOT NULL CONSTRAINT FK_CODMATERIA
- REFERENCES MATERIAS(CODMATERIA),
- CODGRADO INTEGER NOT NULL CONSTRAINT FK_COD_GRADO
- REFERENCES GRADO(CODIGOGRADO),
- CODESPECIALIDAD INTEGER NOT NULL CONSTRAINT FK_COD_ESPECIALIDAD
- REFERENCES ESPECIALIDAD(CODESPECIALIDAD),
- CODSECCION INTEGER NOT NULL CONSTRAINT FK_COD_SECCION
- REFERENCES SECCIONES(CODSECCION),
- ANIO_ASIGNACION DATE DEFAULT(SYSDATE)
- )
- /
- CREATE TABLE NOTAS(
- ID INTEGER CONSTRAINT PK_ID_NOTAS PRIMARY KEY,
- CODALUMNO INTEGER NOT NULL CONSTRAINT FK_COD_ALUMNO
- REFERENCES ALUMNO(CODALUMNO),
- CODMATERIA INTEGER NOT NULL CONSTRAINT FK_COD_MATERIANOTA
- REFERENCES MATERIAS(CODMATERIA),
- ACTIVIDAD NUMBER(8,2),
- LABORATORIO NUMBER(8,2),
- EXAMEN NUMBER(8,2),
- CODPERIODO INTEGER NOT NULL CONSTRAINT FK_CODPERIODO
- REFERENCES PERIODOS(CODPERIODO),
- ANIO_ASIGNACION DATE DEFAULT(SYSDATE)
- )
- /
- CREATE TABLE ENCARGADOS_GRADO(
- ID INTEGER CONSTRAINT PK_ID_ENCARGADOG PRIMARY KEY,
- CODDOCENTE INTEGER NOT NULL CONSTRAINT FK_COD_DOCENTE_ENCARGADO
- REFERENCES DOCENTE(CODDOCENTE),
- CODGRADO INTEGER NOT NULL CONSTRAINT FK_COD_GRADO_ASIGNADO
- REFERENCES GRADO(CODIGOGRADO),
- CODSECCION INTEGER NOT NULL CONSTRAINT FK_COD_SECCIONES_GRADO
- REFERENCES SECCIONES(CODSECCION),
- CODESPECIALIDAD INTEGER NOT NULL CONSTRAINT FK_COD_ESPECIALIDAD_GRADO
- REFERENCES ESPECIALIDAD(CODESPECIALIDAD),
- ANIO_ENCARGO DATE DEFAULT(SYSDATE)
- )
- /
- CREATE TABLE HISTORIAL_MATRICULA(
- ID_HM INTEGER CONSTRAINT PK_ID_HM PRIMARY KEY,
- USUARIO_SISTEMA VARCHAR2(100) NOT NULL,
- CODALUMNO INTEGER NOT NULL CONSTRAINT FK_CODA_HISTORIALM REFERENCES
- ALUMNO(CODALUMNO),
- ACCION VARCHAR2(100),
- FECHA DATE DEFAULT(SYSDATE)
- )
- /
- CREATE TABLE HISTORIAL_NOTAS(
- ID_HN INTEGER CONSTRAINT PK_ID_HN PRIMARY KEY,
- USUARIO_SISTEMA VARCHAR2(100) NOT NULL,
- CODALUMNO INTEGER NOT NULL CONSTRAINT FK_CODA_HISTORIALN REFERENCES
- ALUMNO(CODALUMNO),
- CODMATERIA INTEGER NOT NULL CONSTRAINT FK_CODM_HISTORIALN REFERENCES
- MATERIAS(CODMATERIA),
- ACTIVIDAD NUMBER(8,2) NOT NULL,
- LABORATORIO NUMBER(8,2) NOT NULL,
- EXAMEN NUMBER(8,2) NOT NULL,
- CODPERIODO INTEGER NOT NULL REFERENCES
- PERIODOS(CODPERIODO),
- ACCION VARCHAR2(100),
- FECHA DATE DEFAULT(SYSDATE)
- )
- /
- CREATE SEQUENCE SQ_ALUMNO START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_MATRICULA START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_DOCENTE START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_ESPECIALIDAD START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_MATERIAS START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_SECCIONES START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_GRADO START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_PERIODOS START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_HM START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_HN START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_CARGAD START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_ENCARGADOG START WITH 1 INCREMENT BY 1
- /
- CREATE SEQUENCE SQ_IDNOTAS START WITH 1 INCREMENT BY 1
- /
- CREATE TRIGGER COD_ALUMNO BEFORE INSERT ON ALUMNO
- FOR EACH ROW
- BEGIN
- :NEW.CODALUMNO:=SQ_ALUMNO.NEXTVAL;
- END;
- /
- CREATE TRIGGER ID_MATRICULA BEFORE INSERT ON MATRICULA
- FOR EACH ROW
- BEGIN
- :NEW.IDMATRICULA:=SQ_MATRICULA.NEXTVAL;
- END;
- /
- CREATE TRIGGER COD_DOCENTE BEFORE INSERT ON DOCENTE
- FOR EACH ROW
- BEGIN
- :NEW.CODDOCENTE:=SQ_DOCENTE.NEXTVAL;
- END;
- /
- CREATE TRIGGER COD_ESPECIALIDAD BEFORE INSERT ON ESPECIALIDAD
- FOR EACH ROW
- BEGIN
- :NEW.CODESPECIALIDAD:=SQ_ESPECIALIDAD.NEXTVAL;
- END;
- /
- CREATE TRIGGER COD_MATERIA BEFORE INSERT ON MATERIAS
- FOR EACH ROW
- BEGIN
- :NEW.CODMATERIA:=SQ_MATERIAS.NEXTVAL;
- END;
- /
- CREATE TRIGGER COD_SECCION BEFORE INSERT ON SECCIONES
- FOR EACH ROW
- BEGIN
- :NEW.CODSECCION:=SQ_SECCIONES.NEXTVAL;
- END;
- /
- CREATE TRIGGER COD_GRADO BEFORE INSERT ON GRADO
- FOR EACH ROW
- BEGIN
- :NEW.CODIGOGRADO:=SQ_GRADO.NEXTVAL;
- END;
- /
- CREATE TRIGGER COD_PERIODO BEFORE INSERT ON PERIODOS
- FOR EACH ROW
- BEGIN
- :NEW.CODPERIODO:=SQ_PERIODOS.NEXTVAL;
- END;
- /
- CREATE OR REPLACE TRIGGER INC_ID_HM BEFORE INSERT ON HISTORIAL_MATRICULA
- FOR EACH ROW
- BEGIN
- :NEW.ID_HM:=SQ_HM.NEXTVAL;
- END;
- /
- CREATE OR REPLACE TRIGGER INC_ID_HN BEFORE INSERT ON HISTORIAL_NOTAS
- FOR EACH ROW
- BEGIN
- :NEW.ID_HN:=SQ_HN.NEXTVAL;
- END;
- /
- CREATE TRIGGER ID_CARGADOCENTE BEFORE INSERT ON CARGA_DOCENTE
- FOR EACH ROW
- BEGIN
- :NEW.ID:=SQ_CARGAD.NEXTVAL;
- END;
- /
- CREATE TRIGGER ID_ENCARGADOG BEFORE INSERT ON ENCARGADOS_GRADO
- FOR EACH ROW
- BEGIN
- :NEW.ID:=SQ_ENCARGADOG.NEXTVAL;
- END;
- /
- CREATE TRIGGER ID_NOTASA BEFORE INSERT ON NOTAS
- FOR EACH ROW
- BEGIN
- :NEW.ID:=SQ_IDNOTAS.NEXTVAL;
- END;
- /
- CREATE OR REPLACE TRIGGER AUDITORIA_MATRICULA AFTER INSERT OR UPDATE OR DELETE ON MATRICULA
- FOR EACH ROW
- BEGIN
- IF INSERTING THEN
- INSERT INTO HISTORIAL_MATRICULA(USUARIO_SISTEMA,CODALUMNO,ACCION)VALUES
- (USER,:NEW.CODALUMNO,'INSERCION');
- ELSIF UPDATING THEN
- INSERT INTO HISTORIAL_MATRICULA(USUARIO_SISTEMA,CODALUMNO,ACCION)VALUES
- (USER,:OLD.CODALUMNO,'ACTUALIZACION');
- ELSIF DELETING THEN
- INSERT INTO HISTORIAL_MATRICULA(USUARIO_SISTEMA,CODALUMNO,ACCION)VALUES
- (USER,:OLD.CODALUMNO,'ELIMINACION');
- END IF;
- END;
- /
- CREATE OR REPLACE TRIGGER AUDITORIA_NOTAS AFTER INSERT OR UPDATE OR DELETE ON NOTAS
- FOR EACH ROW
- BEGIN
- IF INSERTING THEN
- INSERT INTO HISTORIAL_NOTAS(USUARIO_SISTEMA,CODALUMNO,CODMATERIA,ACTIVIDAD,
- LABORATORIO,EXAMEN,CODPERIODO,ACCION)VALUES
- (USER,:NEW.CODALUMNO,:NEW.CODMATERIA,:NEW.ACTIVIDAD,:NEW.LABORATORIO,:NEW.EXAMEN,
- :NEW.CODPERIODO,'INSERCION');
- ELSIF UPDATING THEN
- INSERT INTO HISTORIAL_NOTAS(USUARIO_SISTEMA,CODALUMNO,CODMATERIA,ACTIVIDAD,
- LABORATORIO,EXAMEN,CODPERIODO,ACCION)VALUES
- (USER,:OLD.CODALUMNO,:OLD.CODMATERIA,:NEW.ACTIVIDAD,:NEW.LABORATORIO,:NEW.EXAMEN,
- :NEW.CODPERIODO,'ACTUALIZACION');
- ELSIF DELETING THEN
- INSERT INTO HISTORIAL_NOTAS(USUARIO_SISTEMA,CODALUMNO,CODMATERIA,ACTIVIDAD,
- LABORATORIO,EXAMEN,CODPERIODO,ACCION)VALUES
- (USER,:OLD.CODALUMNO,:OLD.CODMATERIA,:OLD.ACTIVIDAD,:OLD.LABORATORIO,:OLD.EXAMEN,
- :OLD.CODPERIODO,'ELIMINACION');
- END IF;
- END;
- /
Advertisement
Add Comment
Please, Sign In to add comment