Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- drop table CONTRATADO_FECHAS;
- drop table ASIGNADO;
- drop table REGALA;
- drop table ASISTE;
- drop table AUTONOMO;
- drop table CONTRATADO;
- drop table COMERCIAL;
- drop table MUESTRA;
- drop table VISITA;
- drop table PROFESOR;
- drop table CENTRO_ESCOLAR;
- create table COMERCIAL (
- comercial_codigo varchar2 (32) PRIMARY KEY,
- nombre varchar2 (100) NOT NULL,
- email varchar2 (100) NOT NULL,
- categoria varchar2 (1) NOT NULL,
- CONSTRAINT email_ak UNIQUE (email)
- );
- create table CONTRATADO (
- contratado_codigo varchar2 (32) PRIMARY KEY,
- coche varchar2 (100) NOT NULL,
- CONSTRAINT fk_contratado_codigo FOREIGN KEY (contratado_codigo) REFERENCES COMERCIAL (comercial_codigo)
- );
- create table CONTRATADO_FECHAS (
- contratado_fechas_codigo varchar2 (32) NOT NULL,
- f_ini date NOT NULL,
- f_fin date,
- CONSTRAINT fk_contratado_fechas_codigo FOREIGN KEY (contratado_fechas_codigo) REFERENCES CONTRATADO (contratado_codigo),
- CONSTRAINT contratado_fechas_f_ini_pk PRIMARY KEY (contratado_fechas_codigo, f_ini),
- CONSTRAINT contratado_fechas_f_fin_ak UNIQUE (contratado_fechas_codigo, f_fin),
- CONSTRAINT contratado_fechas_check CHECK (f_fin > f_ini)
- );
- create table AUTONOMO (
- autonomo_codigo varchar2 (32) PRIMARY KEY,
- supervisor varchar2 (32) NOT NULL,
- CONSTRAINT fk_autonomo_codigo FOREIGN KEY (autonomo_codigo) REFERENCES COMERCIAL (comercial_codigo),
- CONSTRAINT fk_supervisor FOREIGN KEY (supervisor) REFERENCES CONTRATADO (contratado_codigo)
- );
- create table MUESTRA (
- muestra_codigo varchar2 (32) PRIMARY KEY,
- coste number (6,2) NOT NULL,
- asignatura varchar2 (100) NOT NULL,
- curso varchar2 (2) NOT NULL
- );
- create table CENTRO_ESCOLAR (
- centro_codigo varchar2 (32) PRIMARY KEY,
- nombre varchar2 (100) NOT NULL
- );
- create table PROFESOR (
- profesor_codigo varchar2 (32) PRIMARY KEY,
- nombre varchar2 (100) NOT NULL,
- centro varchar2 (32) NOT NULL,
- CONSTRAINT fk_profesor_centro FOREIGN KEY (centro) REFERENCES CENTRO_ESCOLAR (centro_codigo)
- );
- create table VISITA (
- centro varchar2 (32) NOT NULL,
- fecha_hora_ini date NOT NULL,
- gastos number (6,2) NOT NULL,
- CONSTRAINT fk_visita_centro FOREIGN KEY (centro) REFERENCES CENTRO_ESCOLAR (centro_codigo),
- CONSTRAINT centro_fecha_hora_ini_pk PRIMARY KEY (centro, fecha_hora_ini)
- );
- create table ASISTE (
- profesor varchar2 (32) NOT NULL,
- visita_centro varchar2 (32) NOT NULL,
- visita_fecha_hora_ini date NOT NULL,
- CONSTRAINT fk_asiste_profesor FOREIGN KEY (profesor) REFERENCES PROFESOR (profesor_codigo),
- CONSTRAINT fk_asiste_visita FOREIGN KEY (visita_centro, visita_fecha_hora_ini) REFERENCES VISITA (centro, fecha_hora_ini),
- CONSTRAINT profesor_visita_pk PRIMARY KEY (profesor,visita_centro, visita_fecha_hora_ini)
- );
- create table REGALA (
- muestra varchar2 (32) NOT NULL,
- profesor varchar2 (32) NOT NULL,
- visita_centro varchar2 (32) NOT NULL,
- visita_fecha_hora_ini date NOT NULL,
- CONSTRAINT fk_regala_muestra FOREIGN KEY (muestra) REFERENCES MUESTRA (muestra_codigo),
- CONSTRAINT fk_regala_profesor FOREIGN KEY (profesor) REFERENCES PROFESOR (profesor_codigo),
- CONSTRAINT fk_regala_visita FOREIGN KEY (visita_centro, visita_fecha_hora_ini) REFERENCES VISITA (centro, fecha_hora_ini),
- CONSTRAINT muestra_profesor_pk PRIMARY KEY (muestra, profesor)
- );
- create table ASIGNADO (
- comercial varchar2 (32) NOT NULL,
- centro varchar2 (32) NOT NULL,
- prioridad number (2) NOT NULL CHECK (prioridad in (1,2,3,4,5)),
- CONSTRAINT fk_asignado_comercial FOREIGN KEY (comercial) REFERENCES COMERCIAL (comercial_codigo),
- CONSTRAINT fk_asignado_centro FOREIGN KEY (centro) REFERENCES CENTRO_ESCOLAR (centro_codigo),
- CONSTRAINT comercial_centro_pk PRIMARY KEY (comercial, centro)
- );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement