Bases de datos

2.782 visualizaciones

Publicado el

0 comentarios
3 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
2.782
En SlideShare
0
De insertados
0
Número de insertados
2
Acciones
Compartido
0
Descargas
46
Comentarios
0
Recomendaciones
3
Insertados 0
No insertados

No hay notas en la diapositiva.
  • En el modo Presentación, haga clic en la flecha para acceder al Centro de introducción a PowerPoint.
  • Bases de datos

    1. 1. Bases de Datos Lic. Diego Fabian Gómez Uniminuto
    2. 2. Diseño de Bases de Datos •Conceptos Básicos
    3. 3. Base de Datos • Una base de datos es un “almacén” que nos permite guardar grandes cantidades de información de forma organizada para que luego podamos encontrar y utilizar fácilmente. A continuación te presentamos una guía que te explicará el concepto y características de las bases de datos. • El término de bases de datos fue escuchado por primera vez en 1963, en un simposio celebrado en California, USA. Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada.
    4. 4. Bases de Datos • Desde el punto de vista informático, la base de datos es un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos. • Cada base de datos se compone de una o más tablas que guarda un conjunto de datos. Cada tabla tiene una o más columnas y filas. Las columnas guardan una parte de la información sobre cada elemento que queramos guardar en la tabla, cada fila de la tabla conforma un registro.
    5. 5. Base de Datos Se define una base de datos como una serie de datos organizados y relacionados entre sí, los cuales son recolectados y explotados por los sistemas de información de una empresa o negocio en particular. http://www.maestrosdelweb.com/editorial/%C2%BFque-son-las-bases-de-datos/
    6. 6. Características de las BD
    7. 7. Características de las BD • Entre las principales características de los sistemas de base datos podemos mencionar: • Independencia lógica y física de datos • Redundancia mínima • Acceso concurrente por parte de múltiples usuarios • Integridad de los datos. • Consultas complejas optimizadas. • Seguridad de acceso y auditoría. • Respaldo y recuperación. • Acceso a través de diferentes lenguajes.
    8. 8. DBMS (Database Management System) • Es un conjunto coordinado de programas, procedimientos, le nguajes, etc. Que suministra tanto a los usuario no informáticos como a los analistas, programadores o al administrador los medios necesarios para describir, recuperar y manipular los datos almacenados en la base, manteniendo su integridad, confidencialidad y seguridad.
    9. 9. Ejemplos de DBMS • Oracle • SQL Server • Sybase • DB2 • MySQL • PostgreSQL
    10. 10. Lenguaje de Definición de Datos. (DDL) • En la parte de definición de un DBMS debe existir un conjunto de instrucciones o comando que permitan crear las estructuras de las bases de datos. A este conjunto de instrucciones se le conoce como lenguaje de definición de datos. En esta especifican los elementos de datos que integran la BD, su estructura y las relaciones que existen entre ellos, las reglas de integridad semántica, los controles a efectuar antes de autorizar el acceso a la base de datos, así como las características de tipo de físico y las vistas lógicas de los usuarios.
    11. 11. Lenguaje de Manipulación de datos (DML) • La función de manipulación permite a los usuarios de la base, informáticos o no, buscar, añadir, suprimir o modificar los datos de la misma, siempre de acuerdo con las especificaciones y las normas de seguridad dictadas por el administrado. Al conjunto de instrucciones de este tipo se le conoce como lenguaje de manipulación de datos.
    12. 12. Diseño de la Base de Datos • Al igual que existe una metodología para crear programas que resuelvan una problemática, es necesario establecer un procedimiento de diseño de las estructuras de las bases de datos. • El diseño se divide en varios niveles: Nivel Conceptual Nivel Lógico Nivel Físico Entendimiento de la persona Entendimiento de la máquina DBMS
    13. 13. Modelo Conceptual • Se visualiza los conjuntos de datos que deben incluirse en el modelo de datos, así como sus relaciones. En esta etapa se puede hacer uso del modelo Entidad – Vínculo, que es uno de los modelos de mayor semántica de diseño. Después de identificar el grupo de dato, se debe generar una estructura lógica para la manipulación de la base de datos por medio del DBMS. Para ello es necesario usar un modelo que puede ser el relacional, que además de establecer la estructura de campos y registros, permite establecer reglas de integridad de datos y reglas de normalización para mejorar la estructura. Finalmente la parte de estructura física la maneja el DBMS con algunos que son necesarios, como por ejemplo la creación de índices.
    14. 14. Modelo Entidad Vínculo • El modelo Entidad-Vinculo fue propuesto por Peter P. Chen en diferentes artículos en el año de 1976. Consiste en un modelo de representación del mundo real que consiste en Entidades y relaciones. • También conocido como Entidad – Relación, diferente al modelo Relacional- Entidad Objeto real o abstracto Persona, lugar, suceso, real o abstracto
    15. 15. Entidad • Una entidad se representa por un rectángulo como lo muestra la siguiente figura: LECTOR
    16. 16. LECTOR Entidad Débil • Son aquellas que no pueden existir sino existe una entidad normal, por ejemplo el crédito de un cliente. Si el cliente no existe, la cuenta tampoco. Y se representa por medio de un rectángulo dentro de otro. CUENTA
    17. 17. EJERCICIO CREACION DE ENTIDADES • Inventarios y facturación: • Una empresa que se dedica a la venta de productos de papelería desea llevar el control de su inventario a través de un sistema basado en bases de datos. El sistema debe registrar las ventas de mostrador e imprimir facturas si es necesario, con los datos de los clientes. Igualmente, se deben capturar las facturas de los proveedores para actualizar las existencias de los productos. Cada mes el sistema debe generar reportes sobre las existencias de los productos para realizar un inventario. El sistema debe ser capaz de manejar información global de ventas al mes, al año, así como la determinación de la existencia en la tienda de productos. • Señalar cuales son las entidades explique porqué Inventarios y facturación: Una empresa que se dedica a la venta de productos de papelería desea llevar el control de su inventario a través de un sistema basado en bases de datos. El sistema debe registrar las ventas de mostrador e imprimir facturas si es necesario, con los datos de los clientes. Igualmente, se deben capturar las facturas de los proveedores para actualizar las existencias de los productos. Cada mes el sistema debe generar reportes sobre las existencias de los productos para realizar un inventario. El sistema debe ser capaz de manejar información global de ventas al mes, al año, así como la determinación de la existencia en la tienda de productos. Señalar cuales son las entidades explique porqué Solución
    18. 18. Creación de Entidades Clientes Proveedores Facturas de Ventas Ventas Productos Facturas de Compras
    19. 19. 2~ Caso
    20. 20. SEMESTRES Catedráticos Materias Calificaciones Carreras Alumnos
    21. 21. Características del Modelo ER • Refleja tan solo la existencia de los datos, no lo que se hace con ellos. • Se incluyen todos los datos relevantes del sistema en estudio. • No está orientado a aplicaciones específicas • Es independiente de los SGBD • No tiene en cuenta restricciones de espacio, almacenamiento, ni tiempo de ejecución. • Está abierto a la evolución del sistema. • Es el modelo conceptual más utilizado Profesor Tutor Estudiante Nombre Curso ID Modulo Estudios
    22. 22. Elementos del Modelo ER • ENTIDAD (entity) • ATRIBUTO (attibute) • DOMINIO (domain) • RELACIÓN (relationship) • LLAVES (KEY)
    23. 23. ENTIDADES • Cualquier objeto (real o abstracto) que existe en la realidad y acerca del cual queremos almacenar información en la BD • Las entidades se representan gráficamente mediante rectángulos con su nombre en el interior • Realmente, los rectángulos representan tipos de entidad, pero se omite el termino “tipo de entidad”. De tal forma que hablaremos siempre de entidades. • Las entidades representan conjuntos de instancias, ocurrencias, ejemplares, e un determinado tipo de objeto del mundo real.
    24. 24. ATRIBUTOS • Atributos = cada una de las propiedades o características que tiene una entidad. • Los atributos son valores simples, ejemplo. Enteros, cadena de caracteres, sin estructura, conjuntos, etc. • Los atributos se representan mediante un óvalo con el nombre del atributo dentro. • Adjetivo: Identificar, relacionar, Describir
    25. 25. Tipos de atributos • Identificadores: son atributos que identifican de manera unívoca cada ocurrencia de una entidad. Toda entidad debe tener al menos un atributo identificador. • Se representa subrayando el nombre del atributo: • Una entidad puede tener más de 1 atributo identificador; en ese caso, elegimos un atributo como identificador primario (P), quedando el resto como identificador alternativos (A) NIP NIP NC PERSONA A DIA HORA HORARIO
    26. 26. Tipos de atributos • Atributos Simples y Compuestos • Simples: son atributos que no están formados por otros atributos. PESO APELLIDO 1 APELLIDO2 APELLIDOS NOMBRE NOMBRE COMPLETO
    27. 27. • Compuestos: son atributos que están formados por otros atributos que a su vez pueden ser simples o compuestos. • Ejemplo de simples y compuestos: • Color es simple, toma valores rojo, azul, etc. • Nombre es compuesto, contiene nombre de pila y PESO APELLIDO 1 APELLIDO2 APELLIDOS NOMBRE NOMBRE COMPLETO
    28. 28. • Monovaluados: son atributos que representan un valor para una determinada ocurrencia de una entidad en un momento determinado, Pueden ser simples o compuestos.
    29. 29. • Derivados (o calculados): son atributos cuyo valor se obtiene aplicando una formula, no se almacenaran en la base de datos. Su valor se obtendrá en el momento en que sea necesario aplicando la fórmula asociada a ellos. • Ejemplo: El promedio de préstamo se puede derivar si tenemos los valores de cada préstamo realizado a la persona.
    30. 30. TELEFONO Tipos de atributos • Multivaluados: son atributos que pueden representar varios valores simultáneamente para una misma ocurrencia de una entidad. Se representa mediante un óvalo. Pueden ser simples o compuestos. • Ejemplo: Teléfono o Teléfonos. TELEFONO EDAD
    31. 31. TIPOS DE ATRIBUTOS • Propios: son los atributos de las relaciones. Se representan unidos al rombo de la relación. CANTIDAD CLIENTE COMPRA PRODUCTOS
    32. 32. DIAGRAMA SIMBOLOS Y NOTACIONES Entidad Entidad Débil Atributos Atributo Multivariado Relación Relación Débil
    33. 33. ENTIDAD ORDEN
    34. 34. ORDEN ENTIDAD DEBIL ORDEN Articulo del pedido
    35. 35. Comprador Atributo Id Numero Nombre Calle Ciudad Dirección
    36. 36. Atributo Multivaluado Profesor TemasTemas
    37. 37. Atributo Derivado Circulo Radio Área
    38. 38. Actividad Ejemplo 3 • Modelar el siguiente problema. • Se trata de una base de datos que debe almacenar la información sobre varias estaciones meteorológicas, en una zona determinada. De cada una de ellas recibiremos y almacenaremos un conjunto de datos cada día: temperatura máxima y mínima, precipitaciones en litros/m2, velocidad del viento máxima y mínima, y humedad máxima y mínima. • El sistema debe ser capaz de seleccionar, añadir o eliminar estaciones. Para cada una almacenaremos su situación geográfica (latitud y longitud), identificador y altitud. • Fuente: http://mysql.conclase.net/curso/?cap=002b#ER_EJEMPLO1
    39. 39. 1.Crear las entidades 2.Identificar Atributos 3.Crear el modelo con entidades y atributos
    40. 40. Quiz A partir del siguiente enunciado se desea realiza el modelo entidad-relación 1. Una empresa vende productos a varios clientes. Se necesita conocer los datos personales de los clientes (nombre, apellidos, DNI, dirección y fecha de nacimiento). Cada producto tiene un nombre y un código, así como un precio unitario. Un cliente puede comprar varios productos a la empresa, y un mismo producto puede ser comprado por varios clientes. Los productos son suministrados por diferentes proveedores. Se debe tener en cuenta que un producto solo puede ser suministrado por un proveedor, y que un proveedor puede suministrar diferentes productos. De cada proveedor se desea conocer el DNI , nombre y dirección.
    41. 41. Quiz A partir del siguiente enunciado se desea realiza el modelo entidad- relación 2. “Se desea informatizar la gestión de una empresa de transportes que reparte paquetes por toda Argentina. Los encargados de llevar los paquetes son los camioneros, de los que se quiere guardar el DNI, nombre, teléfono, dirección, salario y población en la que vive. De los paquetes transportados interesa conocer el código de paquete, descripción, destinatario y dirección del destinatario. Un camionero distribuye muchos paquetes, y un paquete sólo puede ser distribuido por un camionero. De las provincias a las que llegan los paquetes interesa guardar el código de provincia y el nombre. Un paquete sólo puede llegar a una provincia. Sin embargo, a una provincia pueden llegar varios paquetes. De los camiones que llevan los camioneros, interesa conocer la matrícula, modelo, tipo y potencia. Un camionero puede conducir diferentes camiones en fechas diferentes, y un camión puede ser conducido por varios camioneros”
    42. 42. Modelo de Entidad - Vínculo • Se entiende por vínculo, relación o interrelación a aquella asociación o correspondencia existente entre entidades. • Se denomina tipo de vínculo a la estructura genérica del conjunto de vínculos existentes entre dos o mas tipos de entidad.
    43. 43. Modelo de Entidad - Vínculo • El vínculo se representa por medio de un rombo, en el cual se escribe un verbo CONDUCE
    44. 44. Modelo de Entidad - Vínculo • En los vínculos se debe establecer el nombre, el grado, la cardinalidad y el tipo de correspondencia. El grado se refiere a la cantidad de entidades que intervienen en la relación. Así, si existe una entidad que se relaciona a así misma es un vínculo de grado 1.
    45. 45. Modelo de Entidad - Vínculo • Se deben definir dos tipos de cardinalidad: mínima y máxima. La mínima se refiere al número mínimo de correspondencias en que una entidad puede participar y la máxima, el número máximo. En los diagramas las cardinalidades mínima y máxima se colocan entre paréntesis separadas por una como sobre la línea del vínculo: • (card. Mínima, card Máxima)
    46. 46. Modelo de Entidad - Vínculo • El tipo de correspondencias se refiere al número máximo de ocurrencias de cada entidad que puede intervenir en una ocurrencia de vínculo. Esta puede ser: de una a una, de uno a mucho y de muchos a muchos.
    47. 47. CONDUCE CONDUCE CONDUCE 1:1 De uno a Uno 1:N De uno a Muchos N:M De Muchos a Muchos
    48. 48. Inventarios y Facturación Proveedores Facturas de Ventas Ventas Productos Facturas de Compras realizaClientesgenera se Tener
    49. 49. Catedráticos Materias Cursos Carreras Alumnos
    50. 50. RELACIÓN • Para evitar confusiones con el término usaremos interrelación, ya que relación tiene un significado radicalmente diferente dentro del modelo relacional, y esto nos puede llevar a error. • Interrelación: es la asociación o conexión entre conjuntos de entidades. • Tengamos los dos conjuntos: de personas y de vehículos. Podemos encontrar una interrelación entre ambos conjuntos a la que llamaremos posee, y que asocie una entidad de cada conjunto, de modo que un individuo posea un vehículo.
    51. 51. • Grado: número de conjuntos de entidades que intervienen en una interrelación. • De este modo, en la anterior interrelación intervienen dos entidades, por lo que diremos que es de grado 2 o binaria. También existen interrelaciones de grado 3, 4, etc. Pero las más frecuentes son las interrelaciones binarias. • Podemos establecer una interrelación ternaria (de grado tres) entre personas, de modo que dos personas sean padre y madre, respectivamente, de una tercera.
    52. 52. • Existen además tres tipos distintos de interrelaciones binarias, dependiendo del número de entidades del primer conjunto de entidades y del segundo. Así hablaremos de interrelaciones 1:1 (uno a uno), 1:N (uno a muchos) y N:M (muchos a muchos). • Nuestro ejemplo anterior de "persona posee vehículo" es una interrelación de 1:N, ya que cada persona puede no poseer vehículo, poseer uno o poseer más de uno. Pero cada vehículo sólo puede ser propiedad de una persona. • Otras relaciones, como el matrimonio, es de 1:1, o la de amistad, de N:M.
    53. 53. Modelo Entidad RelaciónRelación.- Asociación entre entidades para reflejar las interacciones existentes entre entidades. Relaciones n-n.-Cada ocurrencia, en cualquiera de las dos entidades de la relación, puede estar asociada con muchas (n) de la otra y viceversa Relaciones 1-1.- Las entidades que intervienen en la relación se asocian una a una Relaciones 1-n.- Una ocurrencia de una entidad está asociada con muchas (n) de otra
    54. 54. Representación Gráfica 1 Existen diversas formas de representar un Modelo Entidad- Relación: Entidades: Rectángulo redondeado, con Nombre en Mayúscula Atributos: en minúscula Relaciones: Uno a Uno: 1-1 Uno a Muchos: 1- n Muchos a Muchos: n-n CLIENTE #*ci *nombre *apellido Campos claves: # Campos Obligatorios: *
    55. 55. Representación Gráfica 2Existen diversas formas de representar un Modelo Entidad- Relación: Entidades: Rectángulo nombre en mayúscula Atributos: en minúscula dentro de óvalos Relaciones: Uno a Uno: 1-1 Uno a Muchos: 1-n Muchos a Muchos: n-n CLIENTE ci nombre apellido compra compra Campo clave: Se subraya
    56. 56. Relaciones "uno a uno" • Estas relaciones entre bases de datos se dan cuando cada campo clave aparece sólo una vez en cada una de las tablas. • Tomando un ejemplo del mundo real, una clara relación de "uno a uno" podría ser, el nombre de cualquier persona y su número de teléfono. Si partimos del supuesto en que cada persona tiene un solo número de teléfono, se podría hablar de una relación "uno a uno".
    57. 57. • Este tipo de relaciones se caracteriza porque cada uno de los campos define a aquél con el que se relaciona. • Es decir, conociendo el nombre de una persona podemos conocer su número telefónico. O si sabemos su número telefónico, podemos identificar al dueño. En estos casos, se suele aconsejar incluir todos los datos dentro de una sola tabla.
    58. 58. Relaciones de "uno a varios" • El ejemplo del caso anterior (cada persona, un teléfono), si bien es correcto teóricamente, es muy improbable desde el punto de vista de la realidad. Con la gran expansión de los teléfonos, por lo general, cada persona tiene un número de teléfono fijo, y además del teléfono móvil. Debemos tener en cuenta que de el de su casa también tendrá un número de teléfono de empresa, y que quizá también sus móviles estén divididos en ocio y trabajo. • Por ello, debemos tener nuestras bases de datos preparadas para ello. Este tipo de relaciones es conocido como "uno a varios", y se podría representar de la siguiente manera:
    59. 59. Relaciones de "uno a varios" • En este caso, lo aconsejable no es almacenar todos los datos en una sola tabla, sino lo eficiente es hacerlo en tablas separadas, utilizando el identificador ID para relacionarlas.
    60. 60. • En la tabla Nombre almacenamos el nombre y apellido, con su ID o número identificador. En la otra tabla, Teléfonos, almacenamos únicamente números de teléfono, con su correspondiente número identificador, en este caso TID. La manera en que se relaciona una con otra es mediante el identificador ID, que está presente en ambas tablas.
    61. 61. Relaciones de "varios a varios" • La última de la relaciones que podemos encontrar es la de "varios con varios". Dado que en la vida las cosas rara vez son sencillas, éste será el tipo de relación que nos encontraremos más a menudo.
    62. 62. • Volviendo al tema de los teléfonos, hemos encontrado la manera de relacionar cada una de las personas con sus diversos teléfonos: el de su casa, el de su empresa, el móvil. Pero no será extraño tener en nuestra base de datos diversas personas que trabajen en la misma empresa, por lo que el número de su trabajo será el mismo, o miembros de una misma familia, por lo que compartirán el mismo teléfono de su hogar.
    63. 63. • ¿Cómo tratar este tipo de relaciones? Si nos limitamos a repetir dicho número de tablas, estaremos creando problemas de redundancia de datos, que a largo plazo lastrarán la rapidez y eficacia de nuestras tablas.
    64. 64. • Como vemos, cada elemento de la base de datos puede relacionarse libremente con uno o varios miembros de las distintas tablas. • En estos casos no hay una regla fija a la que podamos acogernos, pero lo aconsejable es aproximarse lo más posible a la realidad, y no dudar en establecer tablas intermedias que nos ayuden a asociar mejor los datos. • Volviendo al tema de los teléfonos, imaginemos que varias personas de nuestra tabla trabajan en la misma empresa en donde tienen varias líneas, por lo que los números de teléfono de trabajo de estas personas serían varios. ¿Cómo representarlo en nuestra base de datos?
    65. 65. • En este caso hemos creado una tabla intermedia llamada "empresas". En la tabla "nombres" incluimos un nuevo campo TID, que se relaciona con la tabla "empresas", y es esta tabla la que se relaciona directamente con los teléfonos. De esta manera, podemos almacenar todos los datos con facilidad sin tener que repetir un sólo número telefónico.
    66. 66. • Se pueden distinguir tres tipos de relaciones: • Relación Uno a Uno: Cuando un registro de una tabla sólo puede estar relacionado con un único registro de la otra tabla y viceversa. • Por ejemplo: tenemos dos tablas una con los datos de diferentes poblaciones y otra con una lista de Alcaldes, una población sólo puede tener un alcalde, y un alcalde lo será únicamente de una población.
    67. 67. • Relación Uno a Varios: Cuando un registro de una tabla (tabla secundaria) sólo puede estar relacionado con un único registro de la otra tabla (tabla principal) y un registro de la otra tabla (tabla principal) puede tener más de un registro relacionado en la primera tabla (tabla secundaria). • Por ejemplo: tenemos dos tablas una con los datos de diferentes poblaciones y otra con los habitantes, una población puede tener más de un habitante, pero un habitante pertenecerá (estará registrado) en una única población.
    68. 68. • Relación Varios a Varios: Cuando un registro de una tabla puede estar relacionado con más de un registro de la otra tabla y viceversa. • Por ejemplo: tenemos dos tablas una con los datos de clientes y otra con los artículos que se venden en la empresa, una cliente podrá realizar un pedido con varios artículos, y un artículo podrá ser vendido a más de un cliente. • Las relaciones varios a varios se suelen representar definiendo una tabla intermedia entre las dos tablas. Por ejemplo sería definir una tabla líneas de pedido relacionada con clientes y con artículos.
    69. 69. Ejemplos: • Un alumno puede estar en uno y solo un grupo de escuela y un grupo de escuela puede tener uno o muchos alumnos. (relación uno a muchos) • Un producto puede estar en una o muchas ventas y una venta puede tener uno o muchos productos (relación de muchos a muchos)
    70. 70. Ejemplos: • Un esposo puede tener una y solo una esposa y una esposa puede tener uno y solo un esposo (relación uno a uno) • Una amante puede tener uno y solo un esposo y un esposo puede tener una o muchas amantes (relación de uno a muchos)
    71. 71. Ejercicio: • Según el concepto de relaciones, escriba 2 ejemplos de cada una.
    72. 72. Ejercicio: • Cree el enunciado y el modelo entidad relación de: • Una persona tiene un numero de cédula. • Una persona puede tener varios correos electrónicos. • Varios conductores para varios buses. • Un usuario una clave • Una persona tiene varios uniformes • Hay varios alimentos para muchas personas.
    73. 73. Solución Parcial Cliente Pedido Articulo Fabrica
    74. 74. Solución Parcial Cliente Pedido Articulo Fabrica Rea liza 1,1 0,n con tie ne 1,n 1,n Cantidad Dis trib uye 1,n 1,n
    75. 75. Cliente #Cliente Saldo Descuento Credito Direcciones de envio N Calle Ciudad Comuna
    76. 76. Pedido #Cliente Fecha Hora Dia, mes año Direcciones de envio N Calle Ciudad Comuna
    77. 77. Articulo #Articulo Descrip cion
    78. 78. Fabrica #Fabrica Telefono Artículos distribui do
    79. 79. Clave • En principio, cada entidad se puede distinguir de otra por sus atributos. Aunque un subconjunto de atributos puedan ser iguales en entidades distintas, el conjunto completo de todos los atributos no se puede repetir nunca. Pero a menudo son sólo ciertos subconjuntos de atributos los que son diferentes para todas las entidades.
    80. 80. • Clave: es un conjunto de atributos que identifican de forma unívoca una entidad. Cliente #Cliente Saldo Descuento Crédito
    81. 81. • Por ejemplo la entidad persona, podemos pensar que de una forma intuitiva sabemos qué atributos distinguen a dos personas distintas. Sabemos que el nombre por si mismo, desde luego, no es uno de esos atributos, ya que hay muchas personas con el mismo nombre. Persona nombre
    82. 82. • A menudo, el conjunto de nombre y apellidos puede ser suficiente, pero todos sabemos que existen ciertos nombres y apellidos comunes que también se repiten, y que esto es más probable si se trata de personas de la misma familia. Persona nombres apellidos
    83. 83. • Las personas suelen disponer de un documento de identidad que suele contener un número que es distinto para cada persona. Persona nombres apellidos documento
    84. 84. • Pero habrá aplicaciones en que este valor tampoco será una opción: podemos tener, por ejemplo, personas en nuestra base de datos de distintas nacionalidades, o puede que no tengamos acceso a esa información (una agenda personal no suele contener ese tipo de datos), también hay personas, como los menores de edad, que generalmente no disponen de documento de identidad.
    85. 85. • Con otros tipos de entidad pasa lo mismo. En el caso de vehículos no siempre será necesario almacenar el número de matrícula o de bastidor, o tal vez no sea un valor adecuado para usar como clave (ya veremos más adelante que en el esquema físico es mucho mejor usar valores enteros). Vehiculos matricula bastidor dueño
    86. 86. • En ocasiones, por un motivo u otro, creamos un atributo artificial para usarlo sólo como clave. Esto es perfectamente legal en el modelo E-R, y se hace frecuentemente porque resulta cómodo y lógico. Vehiculos #Id_vehiculos bastidor dueño Id_matricula
    87. 87. Claves candidatas • Una característica que debemos buscar siempre en las claves es que contengan el número mínimo de atributos, siempre que mantengan su función. Diremos que una clave es mínima cuando si se elimina cualquiera de los atributos que la componen, deja de ser clave. Si en una entidad existe más de una de estas claves mínimas, cada una de ellas es una clave candidata.
    88. 88. • Clave candidata: es cada una de las claves mínimas existente en un conjunto de entidades. Vehiculos color bastidor dueño matricula
    89. 89. color bastidor dueño matricula Llaves Candidatas
    90. 90. Clave principal • Si disponemos de varias claves candidatas no usaremos cualquiera de ellas según la ocasión. Esto sería fuente de errores, de modo que siempre usaremos la misma clave candidata para identificar la entidad.
    91. 91. • Clave principal: (o primaria), es una clave candidata elegida de forma arbitraria, que usaremos siempre para identificar una entidad.
    92. 92. color bastidor dueño #matricula Llaves Principal
    93. 93. Claves de interrelaciones • Para identificar interrelaciones el proceso es similar, aunque más simple. Tengamos en cuenta que para definir una interrelación usaremos las claves primarias de las entidades interrelacionadas. De este modo, el identificador de una interrelación es el conjunto de las claves primarias de cada una de las entidades interrelacionadas.
    94. 94. • Por ejemplo, si tenemos dos personas identificadas con dos valores de su clave primaria, clave1 y clave2, y queremos establecer una interrelación "es padre de" entre ellas, usaremos esas dos claves. El identificador de la interrelación será clave1,clave2. ENTIDAD1 ENTIDAD2INTERRELACION CLAVE1 CLAVE2CLAVE1 CLAVE2
    95. 95. Entidades fuertes y débiles • A menudo la clave de una entidad está ligada a la clave principal de otra, aún sin tratarse de una interrelación.
    96. 96. • Por ejemplo, supongamos una entidad viaje, que usa la clave de un vehículo y añade otros atributos como origen, destino, fecha, distancia. viaje Id_matricula origen destino distancia fecha
    97. 97. • Decimos que la entidad viaje es una entidad débil, en contraposición a la entidad vehículo, que es una entidad fuerte. La diferencia es que las entidades débiles no necesitan una clave primaria, sus claves siempre están formadas como la combinación de una clave primaria de una entidad fuerte y otros atributos.
    98. 98. • Además, la existencia de las entidades débiles está ligada o subordinada a la de la fuerte. Es decir, existe una dependencia de existencia. Si eliminamos un vehículo, deberemos eliminar también todos los viajes que ese vehículo ha realizado.
    99. 99. • Se trata de gestionar una biblioteca, y nuestro cliente quiere tener ciertas herramientas a su disposición para controlar libros, socios y préstamos. Adicionalmente se necesita un control de los ejemplares de cada libro, su ubicación y su estado, con vistas a su retirada o restitución, para esto último necesita información sobre editoriales a las que se deben pedir los libros. • Tanto los ejemplares como los socios estarán sujetos a ciertas categorías, de modo que según ellas cada ejemplar podrá ser o no prestado a cada socio. Por ejemplo, si las categorías de los ejemplares van de A a F, y la de los socios de B a F, un ejemplar de categoría A nunca puede ser prestado a ningún socio. Estos ejemplares sólo se pueden consultar en la biblioteca, pero no pueden salir de ella. Un ejemplar de categoría B sólo a socios de categoría B, uno de categoría C se podrá prestar a socios de categorías B y C, etc. Los ejemplares de categoría F siempre pueden prestarse.
    100. 100. • El sistema debe proporcionar también un método de búsqueda para libros por parte de los socios, por tema, autor o título. El socio sólo recibirá información sobre los libros de los que existen ejemplares, y sobre la categoría. • Además, se debe conservar un archivo histórico de préstamos, con las fechas de préstamo y devolución, así como una nota que el responsable de la biblioteca quiera hacer constar, por ejemplo, sobre el estado del ejemplar después de su devolución. Este archivo es una herramienta para la biblioteca que se puede usar para discriminar a socios "poco cuidadosos". • Los préstamos, generalmente, terminan con la devolución del libro, pero algunas veces el ejemplar se pierde o el plazo supera un periodo de tiempo establecido y se da por perdido. Estas circunstancias pueden cerrar un préstamo y provocan la baja del ejemplar (y en ocasiones la del socio :-). Nuestro archivo histórico debe contener información sobre si el libro fue devuelto o perdido.
    101. 101. • Identificar entidades • Identificar relaciones • Primer diagrama • Identificar atributos • Selección claves • Verificar modelo
    102. 102. Catedráticos Materias Cursos Carreras Alumnos Impa rte De los Perte nece Acre dita Id_Cat Id_Mat Id_Carre Id_Curso Id_Alum

    ×