bases de Datos relacionales Ing. Mario Alberto Valle
Introducción Microsoft SQL Server 2008 Express Edición es un sistema potente y fiable de gestión de datos que proporciona un rico conjunto de características, protección de datos y rendimiento para clientes de aplicaciones incrustadas, aplicaciones Web ligeras y almacenes de datos locales. Diseñado para una fácil implementación y creación rápida de prototipos, SQL Server 2008 Express está disponible sin costo alguno, y usted es libre de redistribuirlo con aplicaciones. Está diseñado para integrarse perfectamente con sus inversiones en otras infraestructuras de servidor. Microsoft SQL Server 2008 Express es una edición gratuita de SQL Server que resulta ideal para el aprendizaje, desarrollo y alimentación de escritorio, aplicaciones Web y aplicaciones de servidor pequeño, y para ser redistribuida.
Desarrollo Características de Microsoft SQL Server 2008 Express Edition Funciones principales Soporta procedimientos almacenados, disparadores, funciones, y puntos de vista Almacene todos los tipos de datos empresariales con soporte nativo para datos relacionales, XML, FILESTREAM y datos espaciales Mejorar el rendimiento, facilidad de uso, visualización, además de la integración con el sistema Microsoft Office 2007 en SQL Server Reporting Services Simplifique los esfuerzos de desarrollo, aprovechando las habilidades existentes T SQL, ADO.NET Entity Framework y LINQ Estrechamente integrado con Visual Studio y Visual Web Develop
Herramientas de SQL Server 2008 Express Edition Motor de base de datos de SQL Server El Motor de base de datos es el servicio principal para almacenar, procesar y proteger los datos. El Motor de base de datos proporciona acceso controlado y procesamiento rápido de transacciones para cumplir los requisitos de las aplicaciones consumidoras de datos más exigentes de su empresa. El Motor de base de datos también proporciona una completa compatibilidad para mantener una gran disponibilidad.
Analysis Services - Datos multidimensionales Analysis Services admite OLAP al permitir al usuario diseñar, crear y administrar estructuras multidimensionales que contienen datos agregados de otros orígenes tales como bases de datos relacionales. Analysis Services - Minería de datos Analysis Services permite al usuario diseñar, crear y visualizar modelos de minería de datos. Estos modelos de minería de datos se pueden construir a partir de otros orígenes de datos empleando una amplia variedad de algoritmos de minería de datos estándar.
SQL Server Integration Services (SSIS) Integration Services es una plataforma para generar soluciones de integración de datos de alto rendimiento, lo que incluye paquetes que proporcionan procesamiento de extracción, transformación y carga (ETL) para almacenamiento de datos. Réplica de SQL Server La réplica es un conjunto de tecnologías destinadas a la copia y distribución de datos y objetos de base de datos desde una base de datos a otra, para luego sincronizar ambas bases de datos y mantener su coherencia. La réplica permite distribuir datos a diferentes ubicaciones y a usuarios remotos o móviles mediante redes de área local y de área extensa, conexiones de acceso telefónico, conexiones inalámbricas e Internet.
SQL Server Reporting Services Reporting Services ofrece funcionalidad empresarial de informes habilitados para Web con el fin de poder crear informes que extraigan contenido a partir de una variedad de orígenes de datos, publicar informes con distintos formatos y administrar centralmente la seguridad y las suscripciones. SQL Server Service Broker Service Broker ayuda a los programadores a crear aplicaciones de base de datos escalables y seguras. Esta nueva tecnología de Motor de base de datos proporciona una plataforma de comunicación basada en mensajes que permite a los componentes de aplicación independientes trabajar como un conjunto funcional. Service Broker incluye infraestructura para programación asincrónica que se puede utilizar para aplicaciones en una base de datos única o instancia única, y también para aplicaciones distribuidas.
Requisitos del sistema Sistemas operativos compatibles: Windows Server 2003 Service Pack 2; Windows Server 2008; Windows Vista; Windows Vista Service Pack 1; Windows XP Service Pack 2; Windows XP Service Pack 3 Sistemas de 32 bits: equipo con procesador Intel o compatible a 1 GHz o superior (se recomienda 2 GHz o superior. Se admite un único procesador) Sistemas de 64 bits: procesador a 1,4 GHz o superior (se recomienda 2 GHz o superior. Se admite un único procesador) 256 MB de RAM como mínimo (se recomienda 1 GB o más) 1 GB de espacio disponible en disco
BASES DE DATOS RELACIONALES 1.- Componentes de las bases de datos: tablas, campos y relaciones Una Base de datos relacional consiste en un conjunto de tablas a las que se les asigna un nombre único. Conceptos básicos: Relación: tabla con columnas y filas. Atributo o campo: nombre de una columna de una relación. Debe ser único en una relación. Tupla o registro: fila de una relación. Por lo que una relación se representa gráficamente como una tabla bidimensional en la que las filas corresponden a registros individuales o tuplas y las columnas corresponden a los campos o atributos de esos registros. Ejemplo: En la siguiente figura se muestra una relación, a la que llamamos PERSONAS, que contiene información de la gente de una Empresa y almacena el IDENTIFICADOR DE LA PERSONA, NOMBRE, FECHA DE NACIMIENTO, PROVINCIA DONDE NACIO y CIUDAD DONDE NACIO.
Operaciones con el Modelo El modelo relacional permite consultar las tablas: instancia por instancia insertar nuevas entidades: definición de archivos insertar nuevas instancias: altas eliminar entidades: bajas de archivos eliminar instancias: bajas actualizar entidades: cambios interrelacionar entidades: a través de un dominio El modelo asume la existencia de un lenguaje de interacción poderoso El modelo fue desarrollado por F. Codd en los 70’s y parte de la definición matemática de que un entidad es un subconjunto del producto cartesiano entre los dominios de la realidad a modelar: Sean los dominios D1 : { d1a, d1b … d1n }, D2 : { d2a, d2b … d2n }, D3 : { d3a, d3b … d3n } Entonces el producto cartesiano D1 x D2 x D3 esta dado por las tuplas < d1a, d2a,d3a > ……. < d1a, d2a,d3b > hasta ….. < d1n, d2n,d3n El subconjunto de este producto es la realidad existente en un momento dado en la empresa
Identificación de llaves Tradicionalmente existen las siguientes tipos de llaves de acceso a un archivo: Llave Primaria: Dominio(s) independientes en la entidad Llave Compuesta: Si la llave primaria es formada por varios dominios Super Llave: Conjunto de llaves que satisfacen la identificación única. En el modelo relacional es lo que se desea, para lo que se requiere el proceso de normalización de entidades en el modelado de la realidad Atributo Primo: es aquel dominio independiente y que forma parte de la llave de una entidad específica. Atributo No primo: es aquel dominio que dependa de una llave en una entidad, sin participar en la llave. Llave Foránea: Aquel dominio que existiendo como dependiente en una entidad es a su vez una llave (Atributo primo) en otra entidad de la BD.
[Temario] 3.- Ciclo de Vida de una Bases de Datos. 3.1.- Proceso de Diseño de Base de Datos. 3.2.- Fase 1. Análisis de Requisitos. 3.3.- Fase 2. Diseño Conceptual. 3.4.- Fase 3. Elección del DBMS. 3.5.- Fase 4. Diseño Lógico. 3.6.- Fase 5. Diseño Físico. 3.7.- Fase 6. Instalación y Mantenimiento.
Características de las Tablas Una tabla está formada por Filas y Columnas. Las Filas son equivalentes a los Registros de un archivo clásico (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.
Diseño de BD Tres grandes fases (comprenden a varias etapas): Modelado conceptual, diseño lógico y diseño físico. T1
Reglas de Relación para SQL y ACCES 1 1 1 M 1 M
Bases de Datos: Conceptos Bàsicos Base de Datos Finanzas Cursos Expedientes Personales Archivo Archivo de cursos NOMBRE CURSO FECHA NOTA Juan Sánchez I2 101 Nov04 15 Carla Tovar I2 101 Nov 04 18 Registro NOMBRE CURSO FECHA NOTA Juan Sánchez IS 101 Nov04 15 Campo Juan Sànchez (campo NOMBRE)
Bases de Datos: Conceptos Bàsicos Archivo de Pedidos Pedido Fecha Prov Total Bs 1401 04/11 0051 5.689 05/11 0064 9.468 1405 06/11 0051 6.562 Campos calculados: Surgen de la combinación de otros campos, el usuario no escribe su contenido. Archivo Campo clave: el archivo se ordena por un campo seleccionado cuyos elementos son irrepetibles.
B.D. Relacionales Fecha Producto Proveedor Cantidad Precio Unit Para entender lo que son y significan las bases de datos relacionales, veamos el siguiente ejemplo: Queremos registrar los datos de una venta: Fecha Producto Proveedor Cantidad Precio Unit Precio Total 05/11 Azucar Central 1200 500 600000 05/11 Leche Parmalar 100 5600 560000 06/11 Margarina Comprolat 600 800 480000 05/11 Melaza Central 600 360000 06/11 Arroz Marty 700 800 560000
B.D. Relacionales Factura 1401 Fecha 05-11-04 Proveedor Central Con las BD relacionales, se ingresan sólo los datos mínimos indispensables Factura 1401 Fecha 05-11-04 Proveedor Central Producto Cant. P.Unitario P.Total Azúcar 1200 500 600000 Melaza 600 600 360000
B.D. Relacionales Pedidos Productos Cod Fecha Proveed . Proveedores Con las BD relacionales, se ingresan sólo los datos mínimos indispensables Pedidos Cod Fecha Proveed . 05/11/04 Central 05/11/04 Trx 06/11/04 Comprolat 1404 06/11/04 Marty Productos Nombre PU Exist Arroz 800 12324 Azúcar 500 840 Leche 5600 917 Margarina 800 1854 Melaza 600 744 Salsa 400 1465 Proveedores Central Comprolat Parmalar Marty Lef Detalle de Pedidos Num Prod Cant PU Ptotal . Azúcar 1200 500 600000 1401 Melaza 600 600 360000
Relaciones (ejemplo 1) Cada vez que se de de alta a un paciente hay que cumplimentar los datos del médico, pudiendose ser el mismo médico para diversos paciente. Por ello conviene separar los datos en dos Tablas: Pacientes Médicos
Relaciones (ejemplo 2) Tabla médicos Tabla Pacientes Código del médico responsable Nombre Apellidos Especialidad Número de colegiado Cargo Observaciones Tabla Pacientes Número SS paciente Nombre del paciente Apellidos del paciente Domicilio Población Provincia Código postal Número de Teléfono Procedencia Fecha de ingreso Código del médico responsable Número de planta Número de cama Número de historial clínico Observaciones
Relaciones (ejemplo 3) Se ha añadido un código de identificación del médico responsable, presente en ambas Tablas. Se ha añadido el Número 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 identificación) Tabla Ingresos
Relaciones (ejemplo 4) Tabla pacientes Tabla ingresos Número de la SS Nombre del paciente Domicilio Población Provincia Código postal Número de teléfono Número de historial clínico Observaciones Tabla ingresos Número de historial clínico Procedencia Fecha de ingreso Código de identificación del médico responsable Número de planta Número de cama Observaciones