base de datos ciclo 1 - capítulo 1 - ok (1)

75
UNIVERSIDAD ESTATAL MILAGRO-UNEMI BASE DE DATOS II

Upload: odali-suarez-a

Post on 26-Jul-2015

90 views

Category:

Technology


0 download

TRANSCRIPT

UNIVERSIDAD ESTATALMILAGRO-UNEMI

BASE DE DATOS II

Evaluación de la Materia

Evaluación:

Bibliografía Recomendada:• RIORDAN R., DISEÑO DE BASES DE DATOS RELACIONALES CON ACCESS Y SQL,

Mc-Graw Hill, 2da. Edición, 2000• SILBERSCHATZ Abraham, KORTH Henry, SUDARSHAN S., FUNDAMENTOS DE BASES

DE DATOS, Mc-Graw Hill, 4ta. Edición, 2002• CONNOLLY Thomas M., WESLEY Addison, SISTEMAS DE BASES DE DATOS, Pearson-

Prentice Hall, 1era. Edición, 2005• CELMA M., CASAMAYOR J.C., MOTA L., BASES DE DATOS RELACIONALES, Pearson-

Prentice Hall, 1era. Edición, 2003

Exámenes Lecciones Deberes Participación en Clase

Proyecto Talleres

50% 20% 10% 10% 10%

Objetivos Generales del Curso

Una vez terminado el proceso de aprendizaje, el estudiante será capaz de: Definir los conceptos fundamentales de un Sistema de

Gestión de Bases de Datos (SGBD). Representar datos utilizando Manejadores de Bases de

Datos tales como: Excel, Access y SQL Server, aplicando Modelos Relacionales.

Demostrar el uso de SQL Server a través de consultas, actualización, eliminación e inserción de datos.

Inducir a la investigación de alumnos en el área.

Unidad 1Introducción al Manejo de Datos

CONTENIDOS1.1. Conceptos Básicos de Bases de Datos.1.2. Sistemas de Archivos frente a los Sistemas de Bases de Datos.1.3. Sistema Manejador de Bases de Datos (SGBD).1.4. Abstracción de Datos.1.5. Modelos de Datos.1.6. Introducción al Modelo Entidad – Relación.1.7. Restricciones.1.8. Claves.1.9. Diagrama Entidad – Relación.1.10. Ejercicios.

Definición de Bases de Datos

1.1. Conceptos Básicos de Bases de Datos

“Una Base de Datos es un conjunto de archivos interrelacionados entre sí, almacenados en conjunto sin redundancia.”

La mayoría de Bases de Datos están en formato digital (electrónico), que ofrece un amplio rango de soluciones al problema de almacenar datos.

Bases de Datos en el pasado…

Objetivos de una BD

Almacenar información. Recuperar información. Buscar Información. Modificar Información.

Toda la información existente en una Base de Datos se encuentra organizada y clasificada, con la única finalidad de poder acceder a ella cuando el usuario lo requiera.

Características de una BD

Segura: BD protegida, con restricciones de acceso.

Organizada: Diseñada y Modelada para almacenar datos que faciliten su búsqueda, inserción, eliminación.

Confiable: Datos reales que no cambien por sucesos externos, tan solo cuando sea necesario.

Persistente: Información no volátil, permanente, no borrable, durable, hasta que sea estrictamente necesario.

Administrable: Adaptable a cambios de estructura.

Ventajas de una BD

Control sobre la redundancia de datosEn los sistemas de bases de datos, todos los registros existentes deben ser ingresados una sola vez, cuando esto sucede, se dice que los datos no son redundantes.

Consistencia de datosEliminando o controlando las redundancias de datos, se reduce en gran medida el riesgo de que haya inconsistencias, si un dato está almacenado una sola vez, cualquier modificación o actualización se debe realizar sólo una vez.

Más información sobre la misma cantidad de datosAl estar todos los datos integrados, se puede extraer información adicional sobre los mismos.

Compartición de datosLos datos existentes deben ser compartidos por varios usuarios, empresas, compañías, países, etc.

Mantenimiento de estándaresEl mantenimiento debe ser normado por una Guía o Metodología, lo cual facilitará las actividades para quienes realizarán este proceso.

Componentes de una BD

Base de DatosContenedor o recipiente donde se guarda la información (nombre, permisos, tamaño).

TablasSon estructuras en forma de tablas que mantienen organizados a los datos (nombre, campos, registros).

RelacionesConsiste en la vinculación o dependencia que existen entre tablas (Cardinalidad).

RegistrosSon verdaderamente los datos guardados o almacenados en una tabla (filas en una tabla).

Metodología para el Diseño de una BD

PASOS DESCRIPCIÓN

Recopilación de información

• Conocer con detalle el resultado previsto.• Si va reemplazar un sistema de información manual o de papel, identificar las

actividades repetitivas.• Consultar a las personas involucradas para determinar lo que hacen y que

necesitan que haga el nuevo sistema, así como los problemas, las limitaciones y los cuellos de botella del sistema existentes.

• Recopilar todos los documentos que formen parte del sistema existente, porque le servirán para diseñar la base de datos e interfaces.

Identificar objetos • Establecer los campos u objetos más importantes que vayan a ser administrados por la base de datos y constatar los elementos que estén relacionados.

• Cada objeto identificado de la base de datos debe tener su tabla correspondiente.

Crear modelos de los objetos

• Registrar los objetos de manera que representen visualmente a su contenido.

Identificar tipos de objetos

• Establecer los tipos de información que deben almacenarse para cada elemento del objeto.

Identificar relaciones entre

objetos

• Examinar las tablas para determinar sus relaciones lógicas y agregar, de ser necesario, columnas relacionales.

Conformación para una BD

Una BD está compuesta por estructuras lógicas de almacenamiento, denominadas Tablas.

Una Tabla está compuesta por Columnas o Campos y Filas o Registros. Un registro es la ocurrencia de conjunto de campos de una Tabla.

Arquitectura de una BD

Hay 3 características importantes inherentes a los sistemas de Bases de Datos: la separación entre los Programas de Aplicación y los Datos, el manejo de múltiples vistas por parte de los usuarios y el uso de un catálogo para almacenar el esquema de la Base de Datos.

ANSI-SPARC (American National Standard Institute – Standards Planning and

Requirements Committee), propuso una arquitectura de 3 niveles para los Sistemas de Bases de Datos, como son:

a) Nivel Internob) Nivel Conceptualc) Nivel Externo

Nivel InternoSe describe la estructura física de la Base de Datos mediante un esquema interno.Este esquema se especifica mediante un modelo físico y describe todos los detalles para el almacenamiento de la Base de Datos, así como los métodos de acceso.

Nivel Conceptual Mediante un esquema conceptual permite ver detalles de las estructuras de

almacenamiento y se concentra en describir: Entidades, Atributos, Relaciones, Operaciones de los usuarios y Restricciones.

En este nivel se puede utilizar un modelo conceptual o un modelo lógico para especificar el esquema.

Nivel Externo Cada esquema externo describe la parte de la Base de Datos que interesa a un

grupo de usuarios determinado y oculta a ese grupo el resto de la Base de Datos.

Sistemas de Archivos frente a los Sistemas de Bases de Datos

1.2. Sistemas de Archivos frente a los Sistemas de Bases de Datos

Sistemas basados en Archivos: Eran sistemas predecesores de los SGBD. Era una colección de programas de aplicación. Cada programa define y gestiona sus datos. Tenía problemas significativos: > Redundancia de datos. > Dependencia entre programas y datos.

Limitaciones de los Sistemas basados en Archivos: Separación y aislamiento de los datos. Duplicación de los datos. Dependencia de los datos. Formatos de archivos incompatibles. Consultas fijas. Crecimiento de programas de aplicación.

Ejemplo:En un Banco que tiene aplicaciones basados en archivos, un cliente apertura una cuenta y luego solicita un crédito.

Sistemas de Gestión de Bases de Datos: La BD es una colección de datos relacionados. El SGBD es un software que gestiona y controla el acceso a la

BD. Es una Aplicación para BD, programa que interactúa con Bases

de Datos.

El SGBD interactúa con las Aplicaciones y la BD: Compras en el supermercado. Depósito en el Banco. Reserva en un Hotel.

Sistema de Gestión de Bases de Datos (SGBD)

1.3. Sistemas de Gestión de Bases de Datos (SGBD)

El DBMS (Database Management System) o SGBD es un conjunto de programas que se encargan de manejar la creación y todos los accesos a las Bases de Datos, está compuesto por:

DDL (Data Definition Language): Lenguaje de Definición de Datos. DML (Data Management Language): Lenguaje de Manipulación de

Datos. SQL (Structured Query Language): Lenguaje de Consulta

Estructurado.

Los DBMS más comunes son: SQL Server, Oracle, Paradox, Informix, Posgree/SQL, Sysbase, MySQL, Access.

Uno de los tipos más conocidos de los DBMS son, las Bases de Datos de Modelo Relacional: se basan en el modelo relaciones, cuya estructura principal es la relación, es decir una tabla bidimensional compuesta por columnas y filas. Cada línea, que en terminología relacional se llama tupla, representa una entidad que nosotros queremos memorizar en la Base de Datos. Cada entidad a su vez está conformada por Atributos o características.

La Base de Datos es una colección de archivos interrelacionados, almacenados en conjunto sin redundancia y la DBMS es un conjunto de numerosas rutinas de software interrelacionadas, cada una de ellas es responsable de una determinada tarea.

Funciones del DBMS

El DBMS (Database Management System) o SGBD (Sistema de Gestión de Bases de Datos) tiene 2 funciones principales que son:o La definición de las estructuras para almacenar los datos.Creación de BD, tablas, relaciones, registros, claves, seguridades.o La manipulación de los datos.Operaciones como: Inserción, eliminación, modificación, búsquedas.

Normalmente: Permite a los usuarios definir la BD mediante DDL y manipular la BD

mediante DML. Proporciona acceso controlado a la BD. Proporciona un catálogo que contiene descripciones de la BD.

Características de los DBMS

Un buen DBMS debe tener las siguientes características: Versatilidad en la representación de relaciones. Tiempo de respuesta. Redundancia mínima. Capacidad de búsqueda. Integridad. Seguridad y privacidad. Enlace con el pasado. Enlace con el futuro. Afinación y monitoreo. Cambios en la importancia de los datos. Claridad y simplicidad.

Componentes de un entorno del SGBD

Funciones y Componentes principales de un SGBD

Ventajas del SGBD

Control de redundancia de datos. Coherencia y Compartición de datos. Mayor integración de datos. Mayor seguridad. Mejor accesibilidad de datos y capacidad de respuesta. Productividad mejorada. Mejora de seguridad y recuperación.

Desventajas del SGBD

Complejidad. Tamaño. Coste de SGBD. Coste de hardware adicional. Costes de conversión de hardware. Prestaciones. Mayor impacto a fallos.

Cargos vinculados a un SGBD

Administrador de Base de Datos (DBA). Administrador de Datos (DM). Diseñador de Base de Datos. Usuarios Finales. Analistas de Sistemas y Programadores. Diseñadores e Implementadores del SGBD. Creadores de Herramientas. Operadores y Personal de Mantenimiento.

Administrador de Base de Datos (DBA):

Se encarga de autorizar el acceso a la base de datos, de coordinar y vigilar su empleo, y de adquirir los recursos necesarios de software y hardware, es netamente técnico, posee experiencia en el manejo de herramientas CASE y conocimientos en herramientas para modelar datos, interactúa con los programadores y con el operador del sistema. Administrador de Datos (DM – Data Management)

Es netamente teórico, tiene una visión global del negocio y conocimiento de herramientas CASE, interactúa con los usuarios, el personal de O&M (Organización y Métodos), es ideal para esta labor. Diseñador de Base de Datos:

Antes de implementar la Base de Datos, identifica los datos que se almacenarán y elige las estructuras apropiadas para representar y almacenar dichos datos.

Usuarios Finales:

Son los principales destinatarios de la Base de Datos, son quienes tienen acceso a la Base de Datos para consultarla, actualizarla y generar informes.

Este es el rol que más frecuentemente desempeña el Técnico en Administración con relación de las Bases de Datos. Analistas de Sistemas y Programadores:

Los analistas y programadores para implementar las especificaciones del sistema deben conocer a la perfección todas las capacidades del SGBD. El Técnico en Administración que integra un equipo de desarrollo interactúa con los analistas y programadores.

Diseñadores e Implementadores del SGBD:

Se encargan de diseñar e implementar los módulos e interfaces del SGBD en forma de paquetes de software. Creadores de Herramientas:

Desarrollan e implementar paquetes para diseñar Bases de Datos, vigilar el rendimiento, proporcionar interfaces de lenguaje natural o de gráficos, elaborar prototipos, realizar simulaciones y generar datos de prueba. Operadores y Personal de Mantenimiento:

Tienen a su cargo el funcionamiento y mantenimiento reales del entorno de hardware y software del sistema de Base de Datos.

Aplicaciones de los DBMS

Formularios:Se emplean para introducir información a la Base de Datos, suelen manejar campos como: Apellidos, Nombres, Dirección, valores, números telefónicos, sexo, fechas, estado civil, etc. La mayoría de formularios utilizan un campo de llenado único, el cual permite identificar o encontrar sus datos asociados a el, también se utilizan para que el DBMS identifique cada fila de cada tabla y se denominan claves sustitutas.

Consultas:Se usan cuando los usuarios desean consultar los datos para contestar preguntas o para identificar problemas o situaciones particulares. Para expresar las consultas se puede utilizar el lenguaje SQL de acceso a los datos. En la mayoría de los DBMS las consultas se pueden guardar como parte de la aplicación, de modo que sea posible volverlas a ejecutar. Además en las consultas se pueden especificar parámetros, lo que significa que se estructuran de forma tal que acepten valores de criterios durante su funcionamiento.

Reportes:Un reporte es la presentación que tiene un formato de la información de una Base de Datos, suelen estar divididos por secciones como: Encabezado, títulos, grupos, detalles, subtotales, totales y pie de página. La presentación de la información casi siempre tiene uno o más ordenamientos.

Menús:Se usan para organizar los distintos componentes de la aplicación con el propósito de que el usuario final acceda a ellos con facilidad, mostrándole las opciones disponibles y ayudándole a seleccionar las acciones que desea realizar.

Programas de Aplicación:Los programas de aplicación vienen a ser como el pegamento que nos permite unir el resto de los componentes de manera coherente, permite realizar procesos y cálculos a la aplicación.

Abstracción de Datos

1.4. Abstracción de Datos

La abstracción de datos es la característica de un sistema de Bases de Datos, que permite al usuario o programador, operar con los datos, sin necesidad de conocer detalles que para él no son de “importancia”, ofreciendo así una visión abstracta de estos, para cumplir con tal fin se han definido diferentes niveles de abstracción: Nivel Físico. Nivel Lógico o Conceptual. Nivel de Vistas.

Nivel Físico:

Determina cómo están almacenados físicamente los datos (pistas, sectores, cilindros), representa el nivel más bajo. Nivel Lógico o Conceptual:

Determina la organización de los archivos (índices, llaves, orden de los campos, relaciones, tipos de datos). Nivel de Vistas:

Oculta parte de la información a los usuarios, es decir, hace visible solo una parte de la Base de Datos.

Modelos de Datos

Consiste en abstraer el mundo físico a una forma lógica para poder representarlo en diagramas o esquemas compatibles con los DBMS para así poder crear una Base de Datos que ayude a almacenar información real.

Un modelo de datos es una serie de conceptos que puede utilizarse para describir un conjunto de datos y las operaciones para manipularlos. Hay 2 tipos de modelos de datos: los modelos conceptuales y los modelos lógicos.

En el diseño de Bases de Datos se usan primero los modelos conceptuales para lograr una descripción de alto nivel de la realidad, y luego se transforma el esquema conceptual en un esquema lógico.

1.5. Modelos de Datos

Objetivos del Modelo de Datos Tener el conocimiento profundo de los datos que se van a

manejar y de alguna forma agruparlos en unidades mayores que se llamarán ENTIDADES. El Modelo de Datos debe ser una fiel representación del sistema de información objeto de estudio.

El objetivo fundamental del Modelo de Datos es la obtención de estructuras no redundantes, sin inconsistencias, seguras e íntegras.

Características del Modelo de Datos Debe representar el estado final al que quiere llegar el

sistema. Cualquier cambio en el sistema de información se debe reflejar

en el Modelo y viceversa. Debe contener representada toda la información que necesita

la unidad. Representa la parte lógica de la información. Se dejan a un

lado las restricciones del sistema en que se van a implantar los datos.

Es independiente del entorno físico y debe proporcionar a los usuarios toda la información requerida y en la forma en que la necesitan.

Modelos Conceptuales

Los modelos conceptuales deben ser buenas herramientas para representar la realidad, por lo que deben poseer las siguientes cualidades: Expresividad: Deben tener suficientes conceptos para expresar

perfectamente la realidad. Simplicidad: Deben ser simples para que los esquemas sean

fáciles de entender. Minimalidad: Cada concepto debe tener un significado distinto. Formalidad: Todos los conceptos deben tener una interpretación

única, precisa y bien definida.

Definición de Esquemas o Entidades Entidades: Cualquier tipo de objeto o concepto sobre el que se

recoge información: cosa, persona, concepto abstracto o suceso. Por ejemplo: coches, casas, empleados, clientes, empresas, oficios, diseños de productos, conciertos, excursiones, etc..

Atributos: Los atributos representan las propiedades básicas de las entidades o las características que hacen a la entidad diferenciarse de las demás.

Claves: Son atributos que hacen que las entidades se consideren únicas entre ellos, sin la posibilidad a generar redundancia de datos.

Existen 2 tipos de claves: Clave Primaria (Primary Key - PK): Es un atributo único que es

obligatorio para toda entidad, garantiza que la información es referente a la entidad y es única.

Clave Secundaria o Foránea (Foreign Key - FK): Es un atributo que se usa para relacionar entidades.

(atributo 1, atributo 2, …, atributo N)

Ejemplo:persona (cédula, apellidos, nombres, dirección, sexo, fecha_nac, ciudad)teléfono (número, marca, modelo, operadora, color)

Nombre_entidad

Introducción al ModeloEntidad – Relación (Modelo ER)

1.6. Introducción al Modelo Entidad – Relación

El Modelo ER está formado por un conjunto de conceptos que permiten describir la realidad mediante un conjunto de representaciones gráficas y lingüísticas, originalmente, sólo incluía los conceptos de Entidad, Relación, Atributo y PK, más adelante se añadió el concepto de Cardinalidad, es una herramienta para: Presentar ideas. Ayudar a la comprensión de los problemas. Contemplar detalles y, Predecir nuevas formas para realizar las cosas.En particular, el modelamiento Entidad – Relación es una técnica que sirve para definir las necesidades de información de la organización, esto es: Qué realiza la organización, Qué información utiliza, Qué datos genera.En lugar de cómo lo hace.

En su forma más simple, el Modelo Entidad – Relación intenta identificar: Las cosas más importantes de una organización (llamadas Entidades u

Objetos). Las propiedades de esas cosas (llamadas Atributos). Y las interrelaciones entre las diversas cosas (llamadas Relaciones).

Tiende a la confección de un modelo conceptual de datos, previo al diseño del esquema de la base de datos.

Es un Modelo N-ARIO, es decir, que las relaciones pueden asociar una, dos o más entidades, se puede hablar de Relaciones: Unitarias: Una entidad consigo misma. Binarias: Entidades relacionadas 2 a 2. Ternarias: Relación entre 3 entidades.

Objetos y EntidadesLa identificación de las Entidades es una tarea muy fácil de realizar, se puede iniciar haciéndose la pregunta: ¿Qué son cosas en este problema?Muchas de las cosas caen dentro de 5 categorías:1) Cosas tangibles.2) Roles.3) Incidentes.4) Interacciones.5) Especificaciones.

Estas categorías son un conjunto de ideas iniciales para encontrar o determinar Objetos o Entidades.

Objetos y Entidades -> Cosas TangiblesLos objetos tangibles son los más fáciles de ubicar, pues son cosas que pueden ser vistas o tocadas, por ejemplo: Autos, Materiales, Construcciones, Máquinas, etc.

Objetos y Entidades -> RolesLos objetos rol o roles, son aquellas actividades realizadas por personas u organizaciones, por ejemplo: Paciente, Doctor, Cliente, Empleado, Propietario, Arrendatario, Distribuidor, Contribuyente, etc.Frecuentemente, si se ubica un objeto rol, es muy posible que se puedan ubicar otros objetos rol, inclusive, a veces, jugados por las mismas personas; tal el caso de empleados que se pueden convertir en clientes, o médicos en pacientes.

Objetos y Entidades -> IncidentesLos objetos incidentes son usados para representar una ocurrencia o un evento, algo que ha sucedido en un tiempo específico, por ejemplo: Vuelo, Accidente, Juego, Llamada, Caída del sistema, Apagón, etc.

Objetos y Entidades -> InteracciónLos objetos interacción generalmente tienen una cualidad de transacción o de contrato entre varios objetos, por ejemplo: Una compra (que relaciona comprador, vendedor y objeto comprado), Un matrimonio (que relaciona al hombre y a la mujer).Estos objetos también pueden ser encontrados cuando se modelan sistemas geométricos o topológicos como una red eléctrica, un oleoducto, etc.

Objetos y Entidades -> EspecificacionesFinalmente los objetos de especificación que frecuentemente muestran catálogos o inventarios y tienen la calidad de estándares o definiciones, por ejemplo: Modelo de televisor, Catálogo de cuentas contables, Fórmula de insumo, etc.En general, puede considerarse una regla que cuando se tienen objetos de especificación, se tendrá otro objeto que contiene las instancias reales de la especificación, estas instancias no necesariamente estarán en un objeto tangible, por ejemplo: tipos de préstamo y prestamos concedidos.

Restricciones

1.7. Restricciones

Una restricción es una condición que obliga el cumplimiento de ciertas condiciones en una Base de Datos, algunas no son determinadas por los usuarios, sino que son inherentemente definidas por el simple hecho de que la Base de Datos sea relacional. Algunas otras restricciones las puede definir el usuario, por ejemplo, usar un campo con valores enteros entre 1 y 10.

Inherentes: Son aquellas que no son determinadas por los usuarios, sino que son definidas por el hecho de que la base de datos sea relacional. Las más importantes son: No puede haber dos tablas iguales. El orden de las tablas no es significativo. El orden de los atributos no es significativo. Cada atributo sólo puede tomar un valor en el dominio en el que está

inscrito.

Tipos de Restricciones

Existen 4 tipos de restricciones: Restricciones de Valores Nulos. Restricciones de Llave. Restricciones de Dominio. Restricciones de Aserción.

Restricciones de Valores Nulos: Si muchos de los atributos no se aplican a todas las tuplas de la

relación, es decir, son nulos, se acabará con un gran número de nulos en esas tuplas.

Esto puede originar un considerable desperdicio en el nivel de almacenamiento y posiblemente dificultar el entendimiento del significado de los atributos y la especificación de operaciones de reunión con en el nivel lógico.

Restricciones de Llave: Esta restricción, es una de las restricciones estándar que con frecuencia

aparecen en las aplicaciones de bases de datos. Estas restricciones se manejan de formas ligeramente distintas en los diversos modelos de datos. En el modelo E-R, una clave es un atributo de un tipo de entidades que debe tener un valor único para cada entidad que pertenezca a dicho tipo en cualquier momento específico. Así el valor del atributo clave puede servir para identificar de manera única cada entidad. Los atributos claves deben ser mono valuados, pero pueden ser simples o compuestos.

Un tipo de entidades normal puede tener una o más claves; un tipo de entidades débil no tiene clave, pero casi siempre tiene una clave parcial cuyos valores identifican de manera única las entidades débiles que están relacionadas a la misma entidad propietario a través de un vínculo identificador.

Restricciones de Dominio: Las restricciones de dominio especifican que el valor de cada atributo A debe ser

un valor atómico del dominio Dom(A) para ese atributo. Los tipos de datos asociados a los dominios por lo general incluyen:

* Datos Numéricos Estándar de los números Enteros (como Entero- Corto, Entero, Entero-Largo),* Datos Numéricos Reales (Flotante y Flotante de Doble Precisión).* Caracteres,* Cadenas de longitud fija, y* Cadenas de longitud variable, así como* Tipos de datos de fecha,* Hora,* Marca de Tiempo y * Dinero. Otros dominios posibles se pueden describir mediante un intervalo de valores de

un tipo de datos o como un tipo de datos enumerado en el que se listan explícitamente todos los valores posibles.

Restricciones de Aserción: Una técnica más formal para representar restricciones explícitas es con un

lenguaje de especificación de restricciones, que suele basarse en alguna variación del cálculo relacional. Este enfoque declarativo establece una separación clara entre la base de restricciones (en la que las restricciones se almacenan en una forma codificada apropiada) y el subsistema de control de integridad del SGBD (que tiene acceso a la base de restricciones para aplicar estas últimas correctamente a las transacciones afectadas).

Cuando se usa esta técnica, las restricciones suelen llamarse aserciones . Se ha sugerido el uso de esta estrategia con SGBD relaciónales. El subsistema de control de integridad compila las aserciones, que entonces se almacenan en el catalogo del SGBD, donde el subsistema de control de integridad puede consultarlas e imponerlas automáticamente. Esta estrategia es muy atractiva desde el punto de vista de los usuarios y programadores por su flexibilidad.

Dominios

Un dominio describe un conjunto de posibles valores para ciertos atributos. Como un dominio restringe los valores del atributo, puede ser considerado como una restricción.

Matemáticamente, atribuir un dominio a un atributo significa "todos los valores de este atributo deben de ser elementos del conjunto especificado".

Distintos tipos de dominios son: Enteros, Cadenas de texto, Fechas, etc.

Claves

CLAVE ÚNICA: Cada tabla puede tener uno o más campos cuyos valores identifican de

forma única cada registro de dicha tabla, es decir, no pueden existir dos o más registros diferentes cuyos valores en dichos campos sean idénticos. Este conjunto de campos se llama clave única.

Pueden existir varias claves únicas en una determinada tabla, y a cada una de éstas suele llamársele candidata a clave primaria.

Clave Primaria: Una clave primaria es una clave única elegida entre todas las

candidatas que define unívocamente a todos los demás atributos de la tabla, para especificar los datos que serán relacionados con las demás tablas. La forma de hacer esto es por medio de claves foráneas.

Sólo puede existir una clave primaria por tabla y ningún campo de dicha clave puede contener valores NULL.

Clave Secundaria: Una clave foránea es una referencia a una clave en otra tabla,

determina la relación existente en dos tablas. Las claves foráneas no necesitan ser claves únicas en la tabla donde están y sí a donde están referenciadas.

Por ejemplo, el código de departamento puede ser una clave foránea en la tabla de empleados. Se permite que haya varios empleados en un mismo departamento, pero habrá uno y sólo un departamento por cada clave distinta de departamento en la tabla de empleados.

CLAVE ÍNDICE: Las claves índice surgen con la necesidad de tener un acceso más

rápido a los datos. Los índices pueden ser creados con cualquier combinación de campos de una tabla. Las consultas que filtran registros por medio de estos campos, pueden encontrar los registros de forma no secuencial usando la clave índice.

Las bases de datos relacionales incluyen múltiples técnicas de ordenamiento, cada una de ellas es óptima para cierta distribución de datos y tamaño de la relación.

Los índices generalmente no se consideran parte de la base de datos, pues son un detalle agregado. Sin embargo, las claves índices son desarrolladas por el mismo grupo de programadores que las otras partes de la base de datos.

http://es.wikipedia.org/wiki/Base_de_datos_relacional

1.8. Diagrama Entidad - Relación

El modelo Entidad – Relación (ER) está formado por un conjunto de conceptos que permiten describir la realidad mediante un conjunto de representaciones gráficas y lingüísticas.

Originalmente, el modelo ER solo incluía los conceptos de Entidad, Relación, Atributo y PK (Primary Key). Más tarde, se añadieron otros conceptos, como Cardinalidad.

Entidad

Atributos

Relaciones

Clave Principal (PK – Primary Key)

Diagrama Entidad - Relación

Permite interrelacionar entidades, suelen llevar un nombre que consiste un verbo, la idea es formar verdaderas oraciones de dependencia.

CARDINALIDADConsiste en la dependencia que tienen las entidades entre sí, también se refiere a que entidad es más relevante que las demás. Tenemos 3 tipos de Cardinalidades: 1 : 1 (Uno a Uno) 1 : M (Uno a Muchos) M : N (Muchos a Muchos)

Cardinalidad de 1 -> 1 Un elemento del conjunto A le pertenece a un elemento del conjunto B y

un elemento del conjunto B le pertenece a un elemento del conjunto A.

Cardinalidad de 1 -> M (M -> 1) Un elemento del conjunto A le pertenece a varios elementos del conjunto B

y un elemento del conjunto B le pertenece tan solo a un elemento del conjunto A.

Varios elementos del conjunto A le pertenecen a un elemento del conjunto B y un elemento del conjunto B le pertenece tan solo a un elemento del conjunto A.

Cardinalidad de M -> N Varios elementos del conjunto A le pertenecen a un elemento del

conjunto B y varios elementos del conjunto B le pertenecen tan solo a un elemento del conjunto A.

Ejemplos de Relaciones que expresan Cardinalidad: Cada esposo (entidad) está casado (relación) con una única esposa

(entidad) y viceversa. Es una relación 1:1

Una factura (entidad) se emite (relación) a una persona (entidad) y sólo una, pero una persona puede tener varias facturas emitidas a su nombre. Todas las facturas se emiten a nombre de alguien. Es una relación 1:M

Un cliente (entidad) puede comprar (relación) varios artículos (entidad) y un artículo puede ser comprado por varios clientes distintos. Es una relación M:N

Ejemplo: Venta de Celulares persona (cédula, apellido, nombre, dirección, sexo, fecha_nac) teléfono (número, marca, modelo, operadora, color)

1) Se parte de una descripción textual del problema o sistema de información a automatizar (los requisitos).

2) Se hace una lista de los sustantivos y verbos que aparecen.3) Los sustantivos son posibles entidades o atributos (definición de

esquemas).4) Los verbos son posibles relaciones.5) Analizando las frases, se determina la Cardinalidad de las relaciones y

otros detalles.6) Se elabora el diagrama (o diagramas) Entidad – Relación.7) Se completa el modelo con listas de atributos y una descripción de

otras restricciones que no se pueden reflejar en el diagrama.

Pasos para la Elaboración del Diagrama Entidad - Relación

Modelo Relacional – Diagrama Físico

Toda tabla debe tener Clave Primaria o Principal (PK). Una tabla Padre deber tener una sola (PK). Una tabla Hija puede tener una o varias Claves Foráneas (FK). Una tabla Hija puede tener una (PK) y una o varias (FK) al mismo

tiempo. Una tabla Padre puede tener varias tablas Hijas. Una tabla Hija puede tener varias tablas Hijas. Una tabla Hija puede tener varias tablas Padres. Las entidades se convierten en Tablas. Los atributos se convierten en Filas de la Tabla. Identificamos las Claves Principales (PK) de toda tabla existente. Identificamos las Tablas que poseen Claves Foráneas (FK) ….. Tablas

Hijas. Relacionamos entre las Tablas Padres y Tablas Hijas. Escogemos la Cardinalidad existente entre las Tablas.

Reglas del Modelo Relacional

1.9. Ejercicios

Problema:Importadora Génesis se dedica a la importación de: Frutas, Vegetales y Especias, para la comercialización al por mayor y menor en las principales ciudades del país donde tiene sus sucursales. Los productos los trae de varias partes del mundo, así el ajo lo trae de la China, las frutas de Estados Unidos, Chile, etc., todos sus Proveedores son del exterior. Sus importaciones pueden estar constituidas por varios contenedores, los mismos que traen un solo producto.Cada sucursal puede tener más de una bodega, las mismas que para un mejor almacenamiento disponen de varias cámaras de enfriamiento. En todas las bodegas existe un bodeguero responsable al igual que existe un jefe de estos para controlar toda la sucursal. Se pide:Construya un modelo E/R para un sistema para el inventario, es decir, su almacenamiento, distribución, costeo y administración. Basándose exclusivamente en los supuestos dados al inicio.

Ejercicios