Vous êtes sur la page 1sur 10

Universidad Abierta Para Adultos.

Asignatura

Sistema de Base de Datos I

Facilitador

Yordi Morán
Participante

Emmanuel Antonio Beltré Silverio

Matricula

17-4219

Tema:

UNIDAD V

Abril 16 del 2019


Santiago de Los Caballero
Estimado/a participante, a continuación la asignación de la quinta semana:

Después de haber estudiado el contenido de esta unidad lea el siguiente requerimiento:

Un nuevo hospital de Santiago va a ser el más moderno de la República Dominicana; por


ello se requiere diseñar una base de datos que contenga información de los médicos y de los
pacientes. Cada paciente tiene asignado un único médico de cabecera que debe tener acceso
al historial clínico del paciente. Dicho historial debe registrar todas las enfermedades
diagnosticadas; y de cada enfermedad, indicar el tratamiento seguido, las intervenciones
realizadas y los análisis. Es interesante incorporar información de alergias o
contraindicaciones que sufre cada paciente.

A continuación:

1-Modelos: Diseñe para el requerimiento anterior lo siguiente:

a) Modelo entidad-relación (con sus relaciones)

b) Modelo relacional (lógico) convertido del modelo entidad-relación anterior


(normalizado)

2) Diccionario de datos: describa en un documento todos los campos, tipos de datos y


descripción de cada tabla del modelo relacional (lógico)

3) Base de datos: escriba en un documento los script de creación de la base datos, cada
tablas con sus claves primarias, claves foráneas y restricciones necesarias. También
agregue scripts con ejemplos de inserción, selección y borrado de cada tabla utilizando el
lenguaje SQL para SQLite.

Finalmente elabore un documento en formato PDF con su hoja de presentación, los


enunciados anteriores seguidos de los modelos y los scripts correspondientes. Suba el
documento a la plataforma.
a) Modelo entidad-relación (con sus relaciones)
b) Modelo relacional (lógico) convertido del modelo entidad-relación anterior
(normalizado)

Normalización del Diagrama Entidad Relación


MEDICO (idmedico, nombre, apellidos, cedula, especialidad, -idpaciente, idhistorial).

PACIENTE (idpaciente, nombre, apellidos, ceduña, sexo, fecha_nac, seguro_medico,


teléfono, -idhistorial).

HISTORIALMEDICO (idhistorial, tipo, fecha, -codigo_alergia, -codigo_contra, -


codigo_enfermedad).

ENFERMEDAD (código_enfermedad, nombre, tipo, -codigo_tratamiento).

TRATAMIENTO (código_tratamiento, análisis, intervenciones).


ALERGIA (código_alergia, nombre).

CONTRAINDICACION (código_contra, nombre).

2) Diccionario de datos: describa en un documento todos los campos, tipos de datos y


descripción de cada tabla del modelo relacional (lógico)

PK--- Dato Primario FK---Dato Foráneo

Tabla MEDICO que contendrá los médicos registrados del hospital:

Campo Tamaño Tipo de Dato Descripción


pk idmedico Numeric Código del médico.
nombre 40 Varchar Nombre del médico.
aprellidos 40 Varchar Apellido/s del médico.
cedula 15 Varchar Cedula del médico.
especialidad 60 Varchar Especialidad/es que puede tener el medico
fk idpaciente Numeric Código del paciente al cual el médico atenderá.
fk idhistorial Numeric Código del historial médico del paciente al cual el
médico tendrá acceso.

Tabla PACIENTE que contendrá los pacientes registrados del hospital:

Campo Tamaño Tipo de Dato Descripción


pk idpaciente Numeric Código del paciente.
nombre 40 Varchar Nombre del paciente.
apellidos 40 Varchar Apellido/s del paciente.
cedula 15 Varchar Cedula del paciente.
sexo 1 Char Sexo del paciente.
fecha_nac Date Fecha de nacimiento del paciente.
seguro_medico 20 Varchar Seguro médico que puede tener el paciente.
telefono 15 Varchar Teléfono del paciente.
fk idhistorial Numeric Historial médico del paciente.
Tabla HISTORIALMEDICO que contendrá el historial médico de los pacientes registrados del
hospital:

Campo Tamaño Tipo de Dato Descripción


pk idhistorial Numeric Código del historial médico.
tipo 20 Varchar Tipo de historial médico.
fecha Date Día de creación del historial médico.
fk codigo_alergia Numeric Código de alergia/as.
fk codigo_contra Numeric Código de contraindicación/es.
fk codigo_enfermedad Numeric Código de enfermedad/es.

Tabla ENFERMEDAD que contendrá las enfermedades que pueden padecer los pacientes
registrados en el hospital:

Campo Tamaño Tipo de Dato Descripción


pk codigo_enfermedad Numeric Codigo de la enfermedad.
nombre 40 Varchar Nombre de la enfermedad.
tipo 40 Varchar Tipo de enfermedad.
fk codigo_tratamiento Numeric Codigo del tratamiento sugerido.

Tabla TRATAMIENTO que contendrá los tratamientos de las enfermedades que pueden
padecer los pacientes registrados en el hospital:

Campo Tamaño Tipo de Dato Descripción


pk codigo_tratamiento Numeric Código del tratamiento
analisis 100 Varchar Análisis realizados.
intervencion 100 Varchar Intervención/es realizadas.

Tabla ALERGIA que contendrá las posibles alergias que pueden tener los pacientes
registrados en el hospital:

Campo Tamaño Tipo de Dato Descripción


pk codigo_alergia Numeric Código de alergia.
nombre 40 Varchar Nombre de la alergia.

Tabla CONTRAINDICACION que contendrá los medicamentos que no pueden ser tomados por
los pacientes registrados en el hospital:
Campo Tamaño Tipo de Dato Descripción
pk codigo_contra Numeric Codigo de Contraindicacion.
nombre 40 Varchar Nombre de Contraindicación.

3) Base de datos: escriba en un documento los script de creación de la base datos, cada
tablas con sus claves primarias, claves foráneas y restricciones necesarias. También
agregue scripts con ejemplos de inserción, selección y borrado de cada tabla utilizando el
lenguaje SQL para SQLite.

SCRIPT de creación de las tablas:


Tabla ALERGIA

CREATE TABLE alergia(codigo_alergia INTEGER PRIMARY KEY NOT


NULL,nombre VARCHAR(40)NOT NULL);

Tabla CONTRAINDICACION
CREATE TABLE contraindicacion(codigo_contra INTEGER PRIMARY KEY NOT
NULL,
nombre VARCHAR(40)NOT NULL);

Tabla TRATAMIENTO
CREATE TABLE tratamiento(codigo_tratamiento INTEGER PRIMARY KEY NOT
NULL,
nombre VARCHAR(100) NOT NULL,
intervencion VARCHAR(100));

Tabla ENFERMEDAD
CREATE TABLE enfermedad(codigo_enfermedad INTEGER PRIMARY KEY NOT
NULL,
nombre varchar(40),
tipo VARCHAR(40)NOT NULL,
codigo_tratamiento INTEGER,
FOREIGN KEY (codigo_tratamiento) REFERENCES tratamiento(codigo_tratamiento));
Tabla HISTORIALMEDICO

CREATE TABLE historialmedico(idhistorial INTEGER PRIMARY KEY NOT NULL,


tipo VARCHAR(20),
fecha date,
codigo_alergia INTEGER,
codigo_contra INTEGER,
codigo_enfermedad INTEGER,
FOREIGN KEY (codigo_enfermedad) REFERENCES enfermedad(codigo_enfermedad),
FOREIGN KEY (codigo_contra) REFERENCES contraindicacion(codigo_contra),
FOREIGN KEY (codigo_alergia) REFERENCES alergia(codigo_alergia));

Tabla PACIENTE

CREATE TABLE paciente(idpaciente INTEGER PRIMARY KEY AUTOINCREMENT


NOT NULL,
nombre varchar(40)NOT NULL,
apellidos varchar(40)NOT NULL,
cedula varchar (15),
sexo char(1)NOT NULL,
fecha_nac date NOT NULL,
seguro_medico varchar(20),
telefono varchar(15),
idhistorial INTEGER,
FOREIGN KEY(idhistorial) REFERENCES historial(idhistorial));

Tabla MEDICO
CREATE TABLE medico(idmedico INTEGER PRIMARY KEY NOT NULL,
nombre varchar(40) NOT NULL,
apellidos varchar(40),
cedula varchar(15),
especialidad varchar(60) NOT NULL,
idpaciente INTEGER,
idhistorial INTEGER,
FOREIGN KEY (idpaciente) REFERENCES paciente(idpaciente),
FOREIGN KEY (idhistorial) REFERENCES historialmedico(idhistorial));
SCRIPT de inserción de las tablas:
Tabla ALERGIA
INSERT INTO alergia VALUES
(1,'erupciones de piel'),
(2,'estornudo');

Tabla CONTRAINDICACION
INSERT INTO contraindicacion VALUES

Tabla CONTRAINDICACION
(1,'Aceptaminophen'),
(2,'Advil 100 ml');

Tabla TRATAMIENTO
INSERT INTO tratamiento VALUES
(1,'Tratamiento Craneal','Operacion de segunda etapa');

Tabla ENFERMEDAD
INSERT INTO enfermedad VALUES
(1,'Amnesia','Enfermedad de trastorno',1);

Tabla Historialmedico
INSERT INTO historialmedico VALUES
(1,'Emergencia','16/04/2019',1,1,1);

Tabla Paciente
INSERT INTO paciente VALUES
(1,'Emma','Beltre','40211811969','M','24/09/1996','827348726384','809764833',1);

SCRIPT de selección de las tablas:

SELECT * FROM paciente;


SELECT * FROM historialmedico;
SELECT * FROM medico;
SELECT * FROM alergia;
SELECT * FROM contraindicacion;
SELECT * FROM tratamiento;

SCRIPT de eliminacion de las tablas:


DELETE * FROM paciente WHERE idpaciente = 1;
DELETE * FROM historialmedico WHERE idhistorial = 1;
DELETE * FROM enfermedad WHERE codigo_enfermedad = 1;
DELETE * FROM alergia WHERE codigo_alergia = 1;
DELETE * FROM tratamiento WHERE codigo_tratamiento = 1;
DELETE * FROM contraindicacion WHERE codigo_contra = 1;

Vous aimerez peut-être aussi