4. Bases de Datos Relacionales. Diseño de una base de datos. Características Etapa previa a la introducción ( Grabación ) de datos. Proceso iterativo ( normalización ): se buscan estructuras pequeñas y homogéneas. Normalización: determinación de las relaciones naturales entre los datos. Mecanismos de normalización: división de tablas en otras con menos atributos. Importante : que no se pierdan datos (recuperación de las tablas originales mediante uniones naturales). Se trabaja sobre el modelo de datos : descripción de la base de datos.
5.
6.
7. Bases de Datos Relacionales. Ejemplo de Normalización Base de Datos sin Normalizar Consultas : Queremos saber la dirección y el teléfono de todos los pacientes que hayan sido tratados por el especialista P1. Nombre, dirección de todos los pacientes que tienen consulta el 25/12/2000. … Clínica I Clínica I
8. Bases de Datos Relacionales. Ejemplo de Normalización Base de Datos Normalizada Consultas : Se pueden hacer las mismas consultas. Profesionales Consultas Clínica I Pacientes
9. Bases de Datos Relacionales. Objetivos de Diseño Satisfacer los requisitos de los usuarios. Asegurar la integridad y consistencia de los datos (respecto a las restricciones). Proporcionar una estructura de la información natural (consultas fáciles de entender, actualizaciones sencillas). Satisfacer los requisitos de rendimiento.
10. Bases de Datos Relacionales. Proceso habitual de diseño. Determinación de requisitos de usuario (entrevistas,...) Análisis de los objetos reales a considerar (se modelan mediante entidades y atributos). Conversión de entidades y atributos en tablas y columnas del gestor de bases de datos. Determinación de atributos que identifican unívocamente a un objeto. Desarrollo de las reglas de acceso, modificación, introducción de datos. Establecimiento de relaciones entre objetos. Planificación de la seguridad.
11. Bases de Datos Relacionales. Análisis de requisitos Diseño del entorno a modelar con el sistema informático: Lista de aplicaciones y uso de datos por ellas. Datos sobre la frecuencia de manipulación de los datos. Quién manipulará los datos. Datos temporales (información disponible de forma crítica en el tiempo, restricciones temporales, etc.)
12. Bases de Datos Relacionales. Análisis y modelado de datos. Recogida de Datos. Antes de diseñar los objetos de la base de datos – tablas y columnas – es necesario organizar y analizar los datos del mundo real a un nivel conceptual. Hay cuatro objetivos primarios: Identificación de las mayores funciones y actividades de la organización. Por ejemplo: Mantener un registro de las consultas en un centro, etc. Identificación de los objetos de estas funciones y actividades. Por ejemplo: Paciente, profesional, etc. Identificación de las características de estos objetos. Identificación de las relaciones entre los objetos.
13. Bases de Datos Relacionales. Análisis y modelado de datos. Identificación de Entidades y Atributos Entidades . Identificación de objetos relevantes (ej. Usuario, empleado, tratamiento, centro de salud, etc.) Atributos . Identificación de características de los objetos (ej. Para empleado: identificador, apellidos, nombre, puesto, cualificación antigüedad). Relaciones . Identificación de relaciones entre objetos (ej. Centro de salud tiene empleados, centro de salud tiene usuarios, usuarios son atendidos por empleados, usuarios tienen tratamientos).
14.
15.
16. Bases de Datos Relacionales. Diseño de las tablas. Tabla ( en base de datos relacional ) : representación de una entidad con sus atributos: Cada columna: valores para un atributo. Cada fila: instancia de una entidad. Ejemplo Una instancia de una entidad define una fila en una tabla de la base de datos. Pacientes
17. Bases de Datos Relacionales. Atributos Únicos Es necesario identificar unívocamente cada instancia de una entidad. Para ello se usan claves primarias (valores únicos para una o varias propiedades). Las claves primarias pueden ser referenciadas por otras tablas. ( Claves externas ) Por ejemplo: El DNI del paciente y el DNI del profesional.
18. Bases de Datos Relacionales. Reglas de Integridad. Especificación del tipo de dato (ej: texto, numérico, fecha,...). Valores por defecto , requeridos , y estado nulo . Restricciones de integridad (reglas para validar la entrada de datos (columna a tabla y tabla a tabla)). Reglas de validación (ejemplo: la fecha de nacimiento ha de estar en el pasado).
19. Bases de Datos Relacionales. Relaciones entre los objetos Hay que definir las relaciones entre tablas ( uno a uno , uno a varios , varios a uno , varios a varios ). Integridad referencial (se usan claves externas o ajenas para asegurar la integridad de los datos). Si se actualiza una clave primaria, se actualizan todas las claves externas que se refieran a ella. Si se elimina una fila, hay que eliminar todas las filas que tengan como clave externa su clave primaria. Si se añade una fila con clave externa, tiene que existir una fila con la correspondiente clave primaria. Cada tabla tiene uno o varios índices ( eficiencia ).