Qu es una Base de Datos? El trmino fue acuado en 1963 Una B de D no es ms que un conjunto de informacin (un conjunto de datos) relacionada que se encuentra agrupada o estructurada. Informticamente una B de D es un sistema formado por un conjunto de datos almacenados en memorias masivas que permiten acceso directo a ellos y un conjunto de programas que manipulan ese conjunto de datos. Definicin formal Es un conjunto exhaustivo (en su modelizacin del mundo real) de datos estructurados, fiables y homogneos, organizados independientemente de su utilizacin y de su implementacin en mquina, accesibles en tiempo real, compartibles por usuarios concurrentes que tienen necesidades de informacin diferentes y no predecibles en el tiempo. Propiedades de los datos Estructurados independientemente de las aplicaciones y del soporte de almacenamiento que los contiene. Presentan la menor redundancia posible. Son compartidos por varios usuarios y/o aplicaciones. Estn bajo un control centralizado. Sistemas de Gestin de B de D Entre la B de D fsica (el almacenamiento real de los datos) y los usuarios del sistema existe un interfaz de software que recibe el nombre de SGBD y es el responsable de tratar todas las peticiones de informacin de los usuarios. Un SGBD es un conjunto de programas de propsito general que permite controlar el acceso y la utilizacin de la B de D, por los usuarios, para incluir, modificar o recuperar informacin, incluyendo prestaciones para conseguir la independencia, la integridad y la seguridad de los datos, as como la concurrencia de usuarios. Bases de Datos Relacionales Los sistemas relacionales operan conceptualmente sobre archivos o Tablas de datos y no sobre los datos individuales contenidos en el archivo. Las tablas permiten representar la informacin de forma mas compacta. Es posible acceser a la informacin contenida en dos o mas tablas simultneamente. Caractersticas de las Tablas Una tabla est formada por Filas y Columnas. Las Filas son equivalentes a los Registros de un archivo clsico (contienen los valores de los objetos o entidades descritas). Las Columnas son equivalentes a los Campos (que representan los atributos de los objetos o entidades descritas). El conjunto de valores que puede tomar un campo se llama dominio. Ejemplo de Tabla Clave Primaria DNI Nombre Apellido Telfono Nombre Campos 2341167 Pedro Alonso 6273652 Registro 5625711 Mara Gmez 6718234 Registro 6718273 Jos Lpez 6715629 Registro Campo Campo Campo Campo El concepto: CLAVE Una clave es una referencia que se utiliza para identificar los registros de forma nica y est formada por uno o mas atributos (columnas) de los registros. La Clave Primaria o principal es la que es mnima en cuanto al nmero de campos que la componen. La Clave Primaria Es importante porque permite acceder a cada uno de los elementos de la B de D por direccionamiento asociativo mediante la combinacin de tres factores: El nombre de la Tabla. La columna. El valor de la clave. Leyes bsicas de los SBDR La B de D contendr generalmente muchas Tablas. Una Tabla slo contiene un nmero fijo de Campos. El nombre de los Campos que componen una Tabla es distinto. Cada Registro de una Tabla es nico. El orden de los Registros y el orden de los Campos de una Tabla no est determinado. Para cada Campo existe un conjunto de valores posibles (Dominio). El lenguaje SQL SQL: Structured Query Language. Cualquier SBDR lleva asociado un lenguaje de manipulacin de datos compuesto de una serir de mandatos u rdenes que permiten interrogar y modificar la B de D. Diseo de B de D Relacionales I Planificacin del tipo de informacin a almacenar: Informacin disponible. Informacin que necesitamos. Esquematizar sobre papel el problema. Considerar los datos a gestionar y estimar el espacio de memoria que necesitan. Diseo de B de D Relacionales II Los dos aspectos mas importantes a la hora del diseo de las Tablas son: Campos Nombre del campo Tipo del campo Anchura del campo Datos Caracteres (texto), valores numricos, fechas, informaciones lgicas, imgenes, multimedia. Fases del diseo de una B de D Definicin de los datos (anlisis de los datos existentes). Refinamiento de los datos (depuracin de los datos necesarios). Establecer relaciones entre los campos. Definicin de los datos Lista en papel de todos los atributos (Campos). Examinar la aplicacin con detalle para determinar exactamente la clase de informacin que debe almacenarse en la B de D. Definicin de datos (ejemplo) Gestin del ingreso de pacientes en un hospital. Nombre del paciente Apellidos del paciente Direccin del paciente Nmero de telfono Fecha de ingreso Procedencia (con o sin P10) Destino del paciente Observaciones Refinamiento de los datos Refinar la lista inicial de campos de modo que los campos constituyan una descripcin precisa de los tipos de datos necesarios. Importante incluir las sugerencias de los futuros usuarios de la B de D. Refinamiento de los datos (ejemplo 1) Nombre del paciente Apellidos del paciente Domicilio Poblacin Provincia Cdigo postal Nmero de telfono Procedencia Fecha de ingreso Nombre del hospital Mdico responsable Nmero de planta Nmero de cama Nmero de historial clnico Observaciones Refinamiento de los datos (ejemplo 2) Nombre del paciente Apellidos del paciente Domicilio Poblacin Provincia Cdigo postal Nmero de telfono Procedencia Fecha de ingreso Nombre del hospital Mdico responsable Nombre del mdico Apellidos del mdico Especialidad Nmero de colegiado Cargo Nmero de planta Nmero de cama Nmero de historial clnico Observaciones Consideracin de las relaciones Inspeccionar los Campos de la Tabla para localizar redundancias en los datos a introducir. Esta estrategia nos permitir determinar si es conveniente o no utilizar varias Tablas y, en su caso, la forma de establecer las relaciones futuras entre los campo. Relaciones (ejemplo 1) Cada vez que se de de alta a un paciente hay que cumplimentar los datos del mdico, pudiendose ser el mismo mdico para diversos paciente. Por ello conviene separar los datos en dos Tablas: Pacientes Mdicos Relaciones (ejemplo 2) Tabla Pacientes Nmero SS paciente Nombre del paciente Apellidos del paciente Domicilio Poblacin Provincia Cdigo postal Nmero de Telfono Procedencia Fecha de ingreso Cdigo del mdico responsable Nmero de planta Nmero de cama Nmero de historial clnico Observaciones Tabla mdicos Cdigo del mdico responsable Nombre Apellidos Especialidad Nmero de colegiado Cargo Observaciones Relaciones (ejemplo 3) Se ha aadido un cdigo de identificacin del mdico responsable, presente en ambas Tablas. Se ha aadido el Nmero de la SS para identificar de forma nica a cada paciente. Observando la Tabla pacientes se ve que esta se puede descomponer en: Tabla Pacientes (datos de identificacin) Tabla Ingresos Relaciones (ejemplo 4) Tabla pacientes Nmero de la SS Nombre del paciente Domicilio Poblacin Provincia Cdigo postal Nmero de telfono Nmero de historial clnico Observaciones Tabla ingresos Nmero de historial clnico Procedencia Fecha de ingreso Cdigo de identificacin del mdico responsable Nmero de planta Nmero de cama Observaciones Relaciones (ejemplo 5) Tabla mdicos Cdigo de identificacin del mdico Nombre Apellidos Especialidad Nmero de colegiado Cargo Observaciones