Академический Документы
Профессиональный Документы
Культура Документы
FACULTAD DE INGENIERÍA
CARRERA INGENIERÍA DE SISTEMAS
MATERIA BASE DE DATOS II
EXAMEN DATAMARTS
-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema centro
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema centro
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `centro` DEFAULT CHARACTER SET latin1 ;
-- -----------------------------------------------------
-- Schema medico
-- -----------------------------------------------------
USE `centro` ;
-- -----------------------------------------------------
-- Table `centro`.`especialidad`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`especialidad` (
`idespecialidad` INT(7) NOT NULL,
`tipo` VARCHAR(20) NOT NULL,
PRIMARY KEY (`idespecialidad`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;
-- -----------------------------------------------------
-- Table `centro`.`farmacia`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`farmacia` (
`id_farmacia` INT(7) NOT NULL AUTO_INCREMENT,
`farmacia` VARCHAR(30) NOT NULL,
`Nombre` VARCHAR(30) NOT NULL,
PRIMARY KEY (`id_farmacia`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;
-- -----------------------------------------------------
-- Table `centro`.`tipo_medicamento`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`tipo_medicamento` (
`idtipo_medicamento` INT NOT NULL,
`tipo` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idtipo_medicamento`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`medicamento`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`medicamento` (
`id_medi` INT(7) NOT NULL AUTO_INCREMENT,
`medicamento` VARCHAR(30) NOT NULL,
`id_farmacia` INT(7) NOT NULL,
`costo` DOUBLE NOT NULL,
`fec_cad` DATE NOT NULL,
`cantidad` INT NOT NULL,
`tipo_medicamento_idtipo_medicamento` INT NOT NULL,
PRIMARY KEY (`id_medi`),
CONSTRAINT `medicamento_ibfk_1`
FOREIGN KEY (`id_farmacia`)
REFERENCES `centro`.`farmacia` (`id_farmacia`),
CONSTRAINT `fk_medicamento_tipo_medicamento1`
FOREIGN KEY (`tipo_medicamento_idtipo_medicamento`)
REFERENCES `centro`.`tipo_medicamento` (`idtipo_medicamento`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;
CREATE INDEX `id_farmacia` ON `centro`.`medicamento` (`id_farmacia` ASC) ;
-- -----------------------------------------------------
-- Table `centro`.`medico`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`medico` (
`idmedico` INT NOT NULL AUTO_INCREMENT,
`nombre` VARCHAR(10) NOT NULL,
`apellido` VARCHAR(10) NOT NULL,
PRIMARY KEY (`idmedico`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;
-- -----------------------------------------------------
-- Table `centro`.`paciente`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`paciente` (
`co_paciente` INT(7) NOT NULL AUTO_INCREMENT,
`nombre` VARCHAR(40) NOT NULL,
`apellido` VARCHAR(40) NOT NULL,
`edad` INT(3) NOT NULL,
PRIMARY KEY (`co_paciente`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;
-- -----------------------------------------------------
-- Table `centro`.`tipo_cita`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`tipo_cita` (
`idtipo_cita` INT NOT NULL,
`descripcion` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idtipo_cita`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`tipo_enfermedad`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`tipo_enfermedad` (
`idtipo_enfermedad` INT NOT NULL,
`tipo` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idtipo_enfermedad`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`enfermedad`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`enfermedad` (
`idenfermedad` INT NOT NULL,
`descripcion` VARCHAR(45) NOT NULL,
`tipo_enfermedad_idtipo_enfermedad` INT NOT NULL,
PRIMARY KEY (`idenfermedad`),
CONSTRAINT `fk_enfermedad_tipo_enfermedad1`
FOREIGN KEY (`tipo_enfermedad_idtipo_enfermedad`)
REFERENCES `centro`.`tipo_enfermedad` (`idtipo_enfermedad`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`paciente_has_enfermedad`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`paciente_has_enfermedad` (
`paciente_co_paciente` INT(7) NOT NULL,
`enfermedad_idenfermedad` INT NOT NULL,
PRIMARY KEY (`paciente_co_paciente`, `enfermedad_idenfermedad`),
CONSTRAINT `fk_paciente_has_enfermedad_paciente1`
FOREIGN KEY (`paciente_co_paciente`)
REFERENCES `centro`.`paciente` (`co_paciente`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_paciente_has_enfermedad_enfermedad1`
FOREIGN KEY (`enfermedad_idenfermedad`)
REFERENCES `centro`.`enfermedad` (`idenfermedad`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;
-- -----------------------------------------------------
-- Table `centro`.`tipo_consultorio`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`tipo_consultorio` (
`idtipo_consultorio` INT NOT NULL,
`tipo` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idtipo_consultorio`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`Consultorio`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`Consultorio` (
`idConsultorio` INT NOT NULL,
`lugar` VARCHAR(45) NOT NULL,
`tipo_consultorio_idtipo_consultorio` INT NOT NULL,
PRIMARY KEY (`idConsultorio`),
CONSTRAINT `fk_Consultorio_tipo_consultorio1`
FOREIGN KEY (`tipo_consultorio_idtipo_consultorio`)
REFERENCES `centro`.`tipo_consultorio` (`idtipo_consultorio`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`cita`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`cita` (
`idcita` INT NOT NULL,
`Fecha` DATE NOT NULL,
`tipo_cita_idtipo_cita` INT NOT NULL,
`detalle` VARCHAR(45) NULL,
`paciente_has_enfermedad_paciente_co_paciente` INT(7) NOT NULL,
`paciente_has_enfermedad_enfermedad_idenfermedad` INT NOT NULL,
`medico_idmedico` INT NOT NULL,
`Consultorio_idConsultorio` INT NOT NULL,
PRIMARY KEY (`idcita`),
CONSTRAINT `fk_cita_tipo_cita1`
FOREIGN KEY (`tipo_cita_idtipo_cita`)
REFERENCES `centro`.`tipo_cita` (`idtipo_cita`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_cita_paciente_has_enfermedad1`
FOREIGN KEY (`paciente_has_enfermedad_paciente_co_paciente` ,
`paciente_has_enfermedad_enfermedad_idenfermedad`)
REFERENCES `centro`.`paciente_has_enfermedad` (`paciente_co_paciente` ,
`enfermedad_idenfermedad`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_cita_medico1`
FOREIGN KEY (`medico_idmedico`)
REFERENCES `centro`.`medico` (`idmedico`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_cita_Consultorio1`
FOREIGN KEY (`Consultorio_idConsultorio`)
REFERENCES `centro`.`Consultorio` (`idConsultorio`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`tipo_laboratorio`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`tipo_laboratorio` (
`idtipo_laboratorio` INT NOT NULL,
`tipo` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idtipo_laboratorio`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`laboratorio`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`laboratorio` (
`idlaboratorio` INT NOT NULL,
`descripcion` VARCHAR(45) NOT NULL,
`tipo_laboratorio_idtipo_laboratorio` INT NOT NULL,
PRIMARY KEY (`idlaboratorio`),
CONSTRAINT `fk_laboratorio_tipo_laboratorio1`
FOREIGN KEY (`tipo_laboratorio_idtipo_laboratorio`)
REFERENCES `centro`.`tipo_laboratorio` (`idtipo_laboratorio`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`receta`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`receta` (
`idreceta` INT NOT NULL,
`fecha` DATE NOT NULL,
`cita_idcita` INT NOT NULL,
`detalle` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idreceta`),
CONSTRAINT `fk_receta_cita1`
FOREIGN KEY (`cita_idcita`)
REFERENCES `centro`.`cita` (`idcita`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`tipo_pago`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`tipo_pago` (
`idtipo_pago` INT NOT NULL,
`descripcion` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idtipo_pago`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`pago`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`pago` (
`idpago` INT NOT NULL,
`monto` DOUBLE NOT NULL,
`fecha` DATE NOT NULL,
`cita_idcita` INT NOT NULL,
`tipo_pago_idtipo_pago` INT NOT NULL,
PRIMARY KEY (`idpago`),
CONSTRAINT `fk_pago_cita1`
FOREIGN KEY (`cita_idcita`)
REFERENCES `centro`.`cita` (`idcita`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_pago_tipo_pago1`
FOREIGN KEY (`tipo_pago_idtipo_pago`)
REFERENCES `centro`.`tipo_pago` (`idtipo_pago`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`medico_has_especialidad`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`medico_has_especialidad` (
`medico_idmedico` INT NOT NULL,
`especialidad_idespecialidad` INT(7) NOT NULL,
`descripcion` VARCHAR(45) NULL,
PRIMARY KEY (`medico_idmedico`, `especialidad_idespecialidad`),
CONSTRAINT `fk_medico_has_especialidad_medico1`
FOREIGN KEY (`medico_idmedico`)
REFERENCES `centro`.`medico` (`idmedico`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_medico_has_especialidad_especialidad1`
FOREIGN KEY (`especialidad_idespecialidad`)
REFERENCES `centro`.`especialidad` (`idespecialidad`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;
-- -----------------------------------------------------
-- Table `centro`.`Examen`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`Examen` (
`idExamen` INT NOT NULL,
`Fecha` VARCHAR(45) NULL,
`cita_idcita` INT NOT NULL,
`laboratorio_idlaboratorio` INT NOT NULL,
PRIMARY KEY (`idExamen`, `cita_idcita`, `laboratorio_idlaboratorio`),
CONSTRAINT `fk_Examen_cita1`
FOREIGN KEY (`cita_idcita`)
REFERENCES `centro`.`cita` (`idcita`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Examen_laboratorio1`
FOREIGN KEY (`laboratorio_idlaboratorio`)
REFERENCES `centro`.`laboratorio` (`idlaboratorio`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`d_tiempo`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`d_tiempo` (
`idd_tiempo` INT NOT NULL,
`dia` VARCHAR(45) NOT NULL,
`semana` VARCHAR(45) NOT NULL,
`mes` VARCHAR(45) NOT NULL,
`año` VARCHAR(45) NOT NULL,
`fecha` DATE NOT NULL,
PRIMARY KEY (`idd_tiempo`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`d_tipo_enfermedad`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`d_tipo_enfermedad` (
`idd_tipo_enfermedad` INT NOT NULL,
`tipo` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idd_tipo_enfermedad`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`d_tipo_medicamento`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`d_tipo_medicamento` (
`idd_tipo_medicamento` INT NOT NULL,
`tipo` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idd_tipo_medicamento`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`d_tipo_cita`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`d_tipo_cita` (
`idd_tipo_cita` INT NOT NULL,
`descripcion` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idd_tipo_cita`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`h_medicamentos_tipo_enfermedad`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`h_medicamentos_tipo_enfermedad` (
`d_tiempo_idd_tiempo` INT NOT NULL,
`d_tipo_enfermedad_idd_tipo_enfermedad` INT NOT NULL,
`d_tipo_medicamento_idd_tipo_medicamento` INT NOT NULL,
`d_tipo_cita_idd_tipo_cita` INT NOT NULL,
`cantidad` INT NOT NULL,
CONSTRAINT `fk_h_medicamentos_tipo_enfermedad_d_tiempo1`
FOREIGN KEY (`d_tiempo_idd_tiempo`)
REFERENCES `centro`.`d_tiempo` (`idd_tiempo`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_h_medicamentos_tipo_enfermedad_d_tipo_enfermedad1`
FOREIGN KEY (`d_tipo_enfermedad_idd_tipo_enfermedad`)
REFERENCES `centro`.`d_tipo_enfermedad` (`idd_tipo_enfermedad`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_h_medicamentos_tipo_enfermedad_d_tipo_medicamento1`
FOREIGN KEY (`d_tipo_medicamento_idd_tipo_medicamento`)
REFERENCES `centro`.`d_tipo_medicamento` (`idd_tipo_medicamento`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_h_medicamentos_tipo_enfermedad_d_tipo_cita1`
FOREIGN KEY (`d_tipo_cita_idd_tipo_cita`)
REFERENCES `centro`.`d_tipo_cita` (`idd_tipo_cita`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `centro`.`medicamento_has_receta`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `centro`.`medicamento_has_receta` (
`medicamento_id_medi` INT(7) NOT NULL,
`receta_idreceta` INT NOT NULL,
`Cantidad` INT NOT NULL,
`fecha` DATE NOT NULL,
PRIMARY KEY (`medicamento_id_medi`, `receta_idreceta`),
CONSTRAINT `fk_medicamento_has_receta_medicamento1`
FOREIGN KEY (`medicamento_id_medi`)
REFERENCES `centro`.`medicamento` (`id_medi`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_medicamento_has_receta_receta1`
FOREIGN KEY (`receta_idreceta`)
REFERENCES `centro`.`receta` (`idreceta`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
insert into
medicamento(id_medi,medicamento,id_farmacia,costo,fec_cad,tipo_medicamento_idtipo_m
edicamento,cantidad)
values(1,"Paracetamol",1,2.00,'2020-11-10',1,50),
(2,"ibuprofeno",2,4.00,'2021-12-10',4,60),
(3,"Digestan",1,1.50,'2020-05-15',2,80),
(4,"Alergin",2,0.50,'2021-04-20',3,100);
select * from medicamento;
insert into
paciente_has_enfermedad(paciente_co_paciente,enfermedad_idenfermedad,idPacienteEnfer
medad)
values(1,3,1),
(1,8,2),
(2,6,3),
(3,7,4),
(4,2,5);
select * from paciente_has_enfermedad;
insert into
medico_has_especialidad(medico_idmedico,especialidad_idespecialidad,descripcion)
values(1,1,"Especialidad 1"),
(1,3,"Especialidad 2"),
(2,4,"Especialidad 1"),
(3,5,"Especialidad 1"),
(4,1,"Especialidad 1");
insert into
cita(idcita,fecha,medico_idmedico,tipo_cita_idtipo_cita,detalle,Consultorio_idConsultorio,paci
ente_has_enfermedad_idPacienteEnfermedad)
values
(1,'2020-04-05',1,2,"Atencion del paciente",3,1),
(2,'2020-04-03',2,2,"Atencion del paciente",1,2),
(3,'2020-03-02',3,2,"Atencion del paciente",3,3),
(4,'2020-03-03',4,2,"Atencion del paciente",1,4),
(5,'2020-04-04',1,2,"Atencion del paciente",1,5);
;
select * from cita;
insert into
medicamento_has_receta(medicamento_id_medi,receta_idreceta,cantidad,fecha,idmedicame
nto_has_receta)
values
(1,1,4,'2020-04-05',1),
(2,1,5,'2020-04-06',2),
(3,2,10,'2020-04-05',3),
(1,2,5,'2020-04-05',4),
(3,3,6,'2020-03-02',5),
(5,4,12,'2020-03-04',6);