MINISTERIO DEL PODER POPULAR PARA LA EDUCACION UNIVERSITARIA
UNIVERSIDAD EXPERIMENTAL DE LOS TEQUES CECILIO ACOSTA PROGRAMA NACIONAL DE FORMACION
MODELADO DE BASE DE DATOS
INTEGRANTES: QUIROZ OTNIEL C.I. V-20.410.125 PROFESOR: ORLANDO MILANO FRANKLIN VERA C.I. V-16.922.954 MATERIA: MODELADO DE BASES DE DATOS TRAYECTO III, TRIMESTRE 2 SECCION 7 INGENIERIA INFORMATICA DROP TABLE IF EXISTS `datos_paciente`;
CREATE TABLE `datos_paciente` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID AUTO INCREMENTADO DEL PACIENTE', `id_cedula` int(11) NOT NULL, `id_tipo_paciente` int(11) NOT NULL COMMENT 'TIPO DE PACIENTE', `id_direccion` int(11) NOT NULL, `id_email` int(11) NOT NULL, `id_solicitud` int(11) NOT NULL COMMENT 'NUMERO DE SOLICITUD ASIGNADO', `id_datos_laborales_paciente` int(11) NOT NULL, `id_persona_responsable` int(11) NOT NULL, `codigo_paciente` int(11) NOT NULL, `id_dato_medico_tratante` int(11) NOT NULL, `nombres` int(11) NOT NULL, `apellidos` int(11) NOT NULL, `id_sexo` set('MASCULINO','FEMENINO') NOT NULL DEFAULT 'MASCULINO' COMMENT 'SEXO DEL PACIENTE', `id_nacionalidad` set('VENEZOLANA','EXTRANJERA') NOT NULL DEFAULT 'VENEZOLANA' COMMENT 'NACIONALIDAD DEL PACIENTE', `estado_civil` set('CASADO','SOLTERO','DIVORCIADO','VIUDO') NOT NULL DEFAULT 'SOLTERO', `id_solicitud_FK` int(11) NOT NULL, `id_cedula_FK` int(11) NOT NULL, `id_tipo_paciente_FK` int(11) NOT NULL, `id_direccion_FK` int(11) NOT NULL, `id_telefono_FK` int(11) NOT NULL, `id_email_FK` int(11) NOT NULL, `id_datos_laborales_paciente_FK` int(11) NOT NULL, `id_teleffono_empresa_FK` int(11) NOT NULL, `id_persona_responsable_FK` int(11) NOT NULL, `id_cedula_responsable_FK` int(20) NOT NULL DEFAULT '0', `id_email_persona_responsable_FK` int(11) NOT NULL, `id_datos_labolares_persona_responsable_FK` int(11) NOT NULL DEFAULT '0', `id_area_servicio_FK` int(11) NOT NULL, `id_motivo_hospitalizacion_FK` int(11) NOT NULL, `id_intervencion_FK` int(11) NOT NULL, `codigo_paciente_FK` int(11) NOT NULL, `id_dato_medico_tratante_FK` int(11) NOT NULL, `id_cedula_medico_tratante_FK` int(11) NOT NULL, `id_numero_FK` int(11) NOT NULL DEFAULT '0', `id_especialidad_FK` int(11) NOT NULL, `id_informe_medico_FK` int(11) NOT NULL DEFAULT '0', PRIMARY KEY(`id`, `id_cedula`, `id_tipo_paciente`, `id_direccion`, `id_email`, `id_solicitud`, `id_datos_laborales_paciente`, `id_persona_responsable`, `codigo_paciente`, `id_dato_medico_tratante`), CONSTRAINT `Cedula Paciente` FOREIGN KEY (`id_cedula_FK`) REFERENCES `cedula_paciente`(`id_cedula`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Ref_04` FOREIGN KEY (`id_solicitud_FK`) REFERENCES `solicitud`(`id_solicitud`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Tipo Paciente` FOREIGN KEY (`id_tipo_paciente_FK`) REFERENCES `tipo_paciente`(`id_tipo_paciente`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Direccion Paciente` FOREIGN KEY (`id_direccion_FK`, `id_telefono_FK`) REFERENCES `direccion`(`id_direccion`, `id_telefono`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Email Paciente` FOREIGN KEY (`id_email_FK`) REFERENCES `email`(`id_email`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Datos Laborales de Paciente` FOREIGN KEY (`id_datos_laborales_paciente_FK`, `id_teleffono_empresa_FK`) REFERENCES `datos_laborales_paciente`(`id_datos_laborales_paciente`, `id_teleffono_empresa`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Persona Responsable` FOREIGN KEY (`id_persona_responsable_FK`, `id_cedula_responsable_FK`, `id_direccion_FK`, `id_telefono_FK`, `id_email_persona_responsable_FK`, `id_datos_labolares_persona_responsable_FK`) REFERENCES `persona_responsable`(`id_persona_responsable`, `id_cedula_responsable`, `id_direccion`, `id_telefono`, `id_email_persona_responsable`, `id_datos_labolares_persona_responsable`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Cedula paciente` FOREIGN KEY (`id_cedula_FK`, `id_area_servicio_FK`, `id_motivo_hospitalizacion_FK`, `id_intervencion_FK`) REFERENCES `datos_intervencion`(`id_cedula`, `id_area_servicio`, `id_motivo_hospitalizacion`, `id_intervencion`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Asigna un codigo al paciente` FOREIGN KEY (`codigo_paciente_FK`) REFERENCES `codigo_paciente`(`codigo_paciente`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Datos del Medico` FOREIGN KEY (`id_dato_medico_tratante_FK`, `id_cedula_medico_tratante_FK`, `id_numero_FK`, `id_especialidad_FK`, `id_informe_medico_FK`) REFERENCES `datos_medico_tratante`(`id_dato_medico_tratante`, `id_cedula_medico_tratante`, `id_numero_medico`, `id_especialidad`, `id_informe_medico`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=INNODB COMMENT = 'Tabla de los Datos Principales del Paciente';
CREATE TABLE `solicitud` ( `id_solicitud` int(11) NOT NULL, `fecha_solicitud` date NOT NULL, `codigo_solicitud` varchar(20) NOT NULL, PRIMARY KEY(`id_solicitud`) ) ENGINE=INNODB;
CREATE TABLE `cedula_paciente` ( `id_cedula` int(11) NOT NULL, `tipo_cedula` set('venezolana','extranjera') NOT NULL, `cedula` int(11) NOT NULL, `id_cedula_FK` int(50) NOT NULL DEFAULT '0', PRIMARY KEY(`id_cedula`), CONSTRAINT `Cedula del paciente` FOREIGN KEY (`id_cedula_FK`) REFERENCES `compaia_seguro`(`id_cedula`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=INNODB;
CREATE TABLE `compaia_seguro` ( `id_cedula` int(50) NOT NULL, `cedula` varchar(50) NOT NULL, `nombres` int(50), `apellidos` int(50), `numero_poliza` varchar(50) NOT NULL, PRIMARY KEY(`id_cedula`) ) ENGINE=INNODB;
CREATE TABLE `persona_responsable` ( `id_persona_responsable` int(11) NOT NULL AUTO_INCREMENT, `id_cedula_responsable` int(20) NOT NULL, `id_direccion` int(11) NOT NULL, `id_telefono` int(11) NOT NULL, `id_email_persona_responsable` int(11) NOT NULL, `id_datos_labolares_persona_responsable` int(11) NOT NULL, `nombres` int(12) NOT NULL, `apellidos` int(12) NOT NULL, `parentesco` int(11), `id_cedula_responsable_FK` int(11) NOT NULL, `id_telefono_FK` int(11) NOT NULL, `id_direccion_FK` int(11) NOT NULL, `id_email_persona_responsable_FK` int(11) NOT NULL, `id_datos_laborales_persona_responsable_FK` int(11) NOT NULL, `id_telefono_FK_1` int(11) NOT NULL, PRIMARY KEY(`id_persona_responsable`, `id_cedula_responsable`, `id_direccion`, `id_telefono`, `id_email_persona_responsable`, `id_datos_labolares_persona_responsable`), CONSTRAINT `C.I Responsable` FOREIGN KEY (`id_cedula_responsable_FK`) REFERENCES `tipo_cedula_responsable`(`id_cedula_responsable`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Telefono Persona Responsable` FOREIGN KEY (`id_telefono_FK`) REFERENCES `telefono_persona_responsable`(`id_telefono`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Direccion Persona Responsable` FOREIGN KEY (`id_direccion_FK`) REFERENCES `direccion_persona_responsable`(`id_direccion`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Email Persona Responsable` FOREIGN KEY (`id_email_persona_responsable_FK`) REFERENCES `email_persona_responsable`(`id_email_persona_responsable`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Datos Laborales de la Persona responsable del Paciente` FOREIGN KEY (`id_datos_laborales_persona_responsable_FK`, `id_telefono_FK_1`) REFERENCES `datos laborales persona responsable`(`id_datos_laborales_persona_responsable`, `id_telefono`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=INNODB;
CREATE TABLE `tipo_cedula_responsable` ( `id_cedula_responsable` int(11) NOT NULL AUTO_INCREMENT, `tipo_cedula_persona_resonsable` set('VENEZOLANO','EXTRANJERO') NOT NULL, `cedula_responsable` varchar(20) NOT NULL, PRIMARY KEY(`id_cedula_responsable`) ) ENGINE=INNODB;
CREATE TABLE `fecha_hospitalizacion` ( `id_fecha` int(11) NOT NULL, `id_ingreso` int(11) NOT NULL, `id_egreso` int(11) NOT NULL, `id_ingreso_FK` varchar(50) NOT NULL DEFAULT '0', `id_egreso_FK` int(11) NOT NULL, PRIMARY KEY(`id_fecha`, `id_ingreso`, `id_egreso`), CONSTRAINT `Ingreso` FOREIGN KEY (`id_ingreso_FK`) REFERENCES `hora_ingreso`(`id_ingreso`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Egreso` FOREIGN KEY (`id_egreso_FK`) REFERENCES `hora_egreso`(`id_egreso`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=INNODB;
CREATE TABLE `numero_medico` ( `id_numero_medico` int(11) NOT NULL, `ssdd` varchar(50), `col_medico` int(11), `id_numero_medico_FK` int(11) NOT NULL DEFAULT '0', `id_medico_tratante_FK` int(11) NOT NULL, `id_cirujano_FK` int(11) NOT NULL, `id_primer_ayudante_FK` int(11) NOT NULL, `id_segundo_ayudante_FK` int(11) NOT NULL, `id_tercer_ayudante_FK` int(11) NOT NULL, `id_cargiologo_FK` int(11) NOT NULL, `id_anestesiologo_FK` int(11) NOT NULL, PRIMARY KEY(`id_numero_medico`), CONSTRAINT `Medico Tratante` FOREIGN KEY (`id_numero_medico_FK`, `id_medico_tratante_FK`, `id_cirujano_FK`, `id_primer_ayudante_FK`, `id_segundo_ayudante_FK`, `id_tercer_ayudante_FK`, `id_cargiologo_FK`, `id_anestesiologo_FK`) REFERENCES `grupo_medico`(`id_numero_medico`, `id_medico_tratante`, `id_cirujano`, `id_primer_ayudante`, `id_segundo_ayudante`, `id_tercer_ayudante`, `id_cargiologo`, `id_anestesiologo`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=INNODB;
CREATE TABLE `grupo_medico` ( `id_numero_medico` int(11) NOT NULL, `id_medico_tratante` varchar(50) NOT NULL, `id_cirujano` varchar(50) NOT NULL, `id_primer_ayudante` varchar(50) NOT NULL, `id_segundo_ayudante` varchar(50) NOT NULL, `id_tercer_ayudante` varchar(50) NOT NULL, `id_cargiologo` varchar(50) NOT NULL, `id_anestesiologo` varchar(50) NOT NULL, `id_medico_tratante_FK` varchar(50) NOT NULL, `id_medico_cirujano_FK` varchar(50) NOT NULL, `id_primer_ayudante_FK` varchar(50) NOT NULL, `id_segundo_ayudante_FK` varchar(50) NOT NULL, `id_tercer_ayudante_FK` varchar(50) NOT NULL, `id_cargiologo_FK` int(11) NOT NULL DEFAULT '0', `id_anestesiologo_FK` varchar(50) NOT NULL, PRIMARY KEY(`id_numero_medico`, `id_medico_tratante`, `id_cirujano`, `id_primer_ayudante`, `id_segundo_ayudante`, `id_tercer_ayudante`, `id_cargiologo`, `id_anestesiologo`), CONSTRAINT `Especialidad` FOREIGN KEY (`id_medico_tratante_FK`) REFERENCES `medico_tratante`(`id_medico_tratante`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `especialidad` FOREIGN KEY (`id_medico_cirujano_FK`) REFERENCES `medico_cirujano`(`id_medico_cirujano`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `especialidad` FOREIGN KEY (`id_primer_ayudante_FK`) REFERENCES `primer_ayudante`(`id_primer_ayudante`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `especialidad` FOREIGN KEY (`id_segundo_ayudante_FK`) REFERENCES `segundo_ayudante`(`id_segundo_ayudante`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `especialidad` FOREIGN KEY (`id_tercer_ayudante_FK`) REFERENCES `tercer_ayudante`(`id_tercer_ayudante`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `especialidad` FOREIGN KEY (`id_cargiologo_FK`) REFERENCES `cardiologo`(`id_cargiologo`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `especialidad` FOREIGN KEY (`id_anestesiologo_FK`) REFERENCES `anestesiologo`(`id_anestesiologo`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=INNODB;
CREATE TABLE `datos_intervencion` ( `id_cedula` int(11) NOT NULL, `id_area_servicio` int(11) NOT NULL, `id_motivo_hospitalizacion` int(11) NOT NULL, `id_intervencion` int(11) NOT NULL, `id_area_servicio_FK` int(11) NOT NULL, `id_motivo_hospitalizacion_FK` int(11) NOT NULL, PRIMARY KEY(`id_cedula`, `id_area_servicio`, `id_motivo_hospitalizacion`, `id_intervencion`), CONSTRAINT `Area de servicio` FOREIGN KEY (`id_area_servicio_FK`) REFERENCES `Area`(`id_area_servicio`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Motivo de la Hospitalizacion` FOREIGN KEY (`id_motivo_hospitalizacion_FK`) REFERENCES `motivo`(`id_motivo_hospitalizacion`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=INNODB;
CREATE TABLE `codigo_paciente` ( `codigo_paciente` int(11) NOT NULL AUTO_INCREMENT, `codigo` varchar(50), `codigo_paciente_FK` int(11) NOT NULL, `tipo_anestecia_FK` int(11) NOT NULL, `id_hospitalizacion_FK` int(11) NOT NULL, `id_quirofano_FK` int(11) NOT NULL, `id_terapia_FK` int(11) NOT NULL, PRIMARY KEY(`codigo_paciente`), CONSTRAINT `Mediante el codigo del paciente` FOREIGN KEY (`codigo_paciente_FK`, `tipo_anestecia_FK`, `id_hospitalizacion_FK`, `id_quirofano_FK`, `id_terapia_FK`) REFERENCES `intervencion quirurjica`(`codigo_paciente`, `tipo_anestecia`, `id_hospitalizacion`, `id_quirofano`, `id_terapia`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=INNODB;
CREATE TABLE `intervencion quirurjica` ( `codigo_paciente` int(11) NOT NULL AUTO_INCREMENT, `tipo_anestecia` int(11) NOT NULL, `id_hospitalizacion` int(11) NOT NULL, `id_quirofano` int(11) NOT NULL, `id_terapia` int(11) NOT NULL, `nombre` int(11), `apellido` int(11), `diagnostico` int(50), `id_hospitalizacion_FK` int(11) NOT NULL, `id_quirofano_FK` int(11) NOT NULL, `id_terapia_FK` int(11) NOT NULL, `id_anestesia_FK` int(11) NOT NULL, `codigo_paciente_FK` int(11) NOT NULL, `id_patologia_FK` int(11) NOT NULL, `id_banco_sangre_FK` int(11) NOT NULL, `id_hemodinamia_FK` int(11) NOT NULL, `id_laboratorio_FK` int(11) NOT NULL, `id_radiologia_FK` int(11) NOT NULL, `id_tomografia_FK` int(11) NOT NULL, `id_equipos_FK` int(11) NOT NULL, PRIMARY KEY(`codigo_paciente`, `tipo_anestecia`, `id_hospitalizacion`, `id_quirofano`, `id_terapia`), CONSTRAINT `Hospitalizacion` FOREIGN KEY (`id_hospitalizacion_FK`) REFERENCES `hospitalizacion`(`id_hospitalizacion`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Quirofano` FOREIGN KEY (`id_quirofano_FK`) REFERENCES `quirofano`(`id_quirofano`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Terapia` FOREIGN KEY (`id_terapia_FK`) REFERENCES `terapia`(`id_terapia`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `anestesia` FOREIGN KEY (`id_anestesia_FK`) REFERENCES `anestesia`(`id_anestesia`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Codigo del Paciente` FOREIGN KEY (`codigo_paciente_FK`, `id_patologia_FK`, `id_banco_sangre_FK`, `id_hemodinamia_FK`, `id_laboratorio_FK`, `id_radiologia_FK`, `id_tomografia_FK`, `id_equipos_FK`) REFERENCES `servicios_equipos`(`codigo_paciente`, `id_patologia`, `id_banco_sangre`, `id_hemodinamia`, `id_laboratorio`, `id_radiologia`, `id_tomografia`, `id_equipos`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=INNODB;
CREATE TABLE `servicios_equipos` ( `codigo_paciente` int(11) NOT NULL AUTO_INCREMENT, `id_patologia` int(11) NOT NULL, `id_banco_sangre` char(50) NOT NULL, `id_hemodinamia` int(11) NOT NULL, `id_laboratorio` int(11) NOT NULL, `id_radiologia` int(11) NOT NULL, `id_tomografia` int(11) NOT NULL, `id_equipos` int(11) NOT NULL, `otros` int(11), `id_patologia_FK` int(11) NOT NULL, `id_banco_sangre_FK` int(11) NOT NULL, `id_hemodinamia_FK` int(11) NOT NULL, `id_laboratorio_FK` int(11) NOT NULL, `id_radiologia_FK` int(11) NOT NULL, `id_tomografia_FK` int(11) NOT NULL, `id_equipos_FK` int(11) NOT NULL, PRIMARY KEY(`codigo_paciente`, `id_patologia`, `id_banco_sangre`, `id_hemodinamia`, `id_laboratorio`, `id_radiologia`, `id_tomografia`, `id_equipos`), CONSTRAINT `Patologia` FOREIGN KEY (`id_patologia_FK`) REFERENCES `patologia`(`id_patologia`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Banco de Sangre` FOREIGN KEY (`id_banco_sangre_FK`) REFERENCES `banco_sangre`(`id_banco_sangre`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Hemodinamia` FOREIGN KEY (`id_hemodinamia_FK`) REFERENCES `hemodinamia`(`id_hemodinamia`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Laboratorio` FOREIGN KEY (`id_laboratorio_FK`) REFERENCES `laboratorio`(`id_laboratorio`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Radiologia` FOREIGN KEY (`id_radiologia_FK`) REFERENCES `radiologia`(`id_radiologia`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Tomografia` FOREIGN KEY (`id_tomografia_FK`) REFERENCES `tomografia`(`id_tomografia`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `Equipos` FOREIGN KEY (`id_equipos_FK`) REFERENCES `equipos`(`id_equipos`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=INNODB;