1. INTRODUCCIÓN: Esta es la tarea número dos de la materia, en la cual diseñaremos una base de datos relacional con una herramienta, ya sea con Workbench o DBDesigner. Realizando la instalación y manejo del programa, desarrollando la siguiente actividad:
BIBLIOTECA Supongamos que queremos diseñar una base de datos para una biblioteca y conocemos que ésta funciona de la siguiente forma:
En la biblioteca se encuentran una serie de libros que los empleados solicitan a las editoriales escribiendo una carta de petición. La dirección a la que ha de dirigir la carta se encuentra en un archivo de editoriales.
Cuando un libro se recibe, se le da de alta mediante la construcción de una ficha para búsqueda por autor y otra ficha para búsqueda por tema. En ambas fichas aparecen el título del libro, el nombre del autor y su nacionalidad, la editorial a la que pertenece la publicación, el tema sobre el que trata, el ISBN y la estantería de la biblioteca en la que se encuentra. Las estanterías soportan como máximo 100 libros y tienen un número y un lugar asignado dentro de la biblioteca. Hay que aclarar que en la biblioteca no se encuentran ejemplares repetidos de ningún libro.
Para obtener los libros de la biblioteca es necesaria la posesión de una credencial que acredite a los distintos usuarios. Esta credencial es única para cada persona y se expide desde la primera vez que se intenta retirar un libro. Cada usuario sólo puede retirar dos libros cada vez.
Mensualmente se confecciona un inventario actualizado donde se indica para cada libro el nombre, el autor y el lugar de la biblioteca donde se encuentra.
En la biblioteca les gustaría disponer de un listado al final de cada día en donde apareciera cada libro que se ha retirado: el título, el ISBN, el autor y el número de credencial, nombre y el teléfono del usuario que lo ha retirado.
2. DESARROLLO.
Los Rectángulos, que representan conjuntos de entidades.
Los Elipses, que representan atributos.
Los Rombos, que representan relaciones entre conjuntos de entidades.
Las Líneas, que unen los atributos con los conjuntos de entidades y los conjuntos de entidades con las relaciones.
ENTIDADES, ATRIBUTOS Y CLAVES DE LOS DATOS Las entidades, atributos y claves son conceptos importantes de la base de datos. Una entidad es una clase generalizada de personas, lugares o cosas (objetos), para los cuales se recopilan, almacenan y mantienen datos. Un atributo es una característica de una entidad. El valor especifico de un atributo, conocido como elemento de datos, se puede encontrar con los campos de registro que describe una entidad. Como ya se planteó, un conjunto de campos de un objeto específico representa un registro. Una clave es un campo o grupo de campos en un registro que se utiliza para identificar a este. Una clave primaria es un campo o grupo de campos que identifica en forma única un registro. Ningún otro registro puede tener la misma clave primaria. La clave primaria se utiliza por distinguir registro con el fin de que se pueda tener acceso a ellos, organizarlos y manipularlos. En el caso del registro de un empleado, él número de este representa un ejemplo de una clave primaria. La localización de un registro en particular que cumpla con un grupo de criterios específicos quizá requiera del uso de una combinación de claves secundarias. Entidades y atributos una vez localizadas las entidades para el diseño de la base de datos:
Editorial
Libros
Usuario
Pedido
Estanterías
Lo siguiente es plasmarlo en nuestro diagrama entidad relación y ver las relaciones que hay entre cada entidad. Ahora nos nos vamos a las consideraciones consideraciones de de diseño: diseño: Las consideraciones de diseño nos dan más información para que nosotros establezcamos las relaciones que existen entre las entidades que ya hemos localizado. Ahora vamos vamos a modelar modelar nuestra base de datos. Primero colocamos las entidades Editorial Editorial con sus atributos y ponemos como clave primaria el código de editorial ya que es lo que nos está indicando nuestra lectura tenemos un código para editorial la cual es única y nos sirve como una clave primaria y de igual manera tenemos más atributos: Dirección.
Cod_Ed Editorial Direcc_Ed Al realizar la relación se tiene tiene que Editorial se relaciona relaciona con libros y es de uno a muchos muchos , porque un libro pertenece a una única editorial, por lo tanto un libro va a pertenecer a una editorial y será una relación de uno a muchos 1: N y la cordialidad de Editorial – libro sería (1,1) y (1, n). Un libro puede pertenecer a una editorial y en una editorial hay muchos libros. Libro Libro con sus atributos y ponemos como clave primaria el código de ISBN ya que es lo que nos está indicando nuestra lectura tenemos un código para libro la cual es única y
nos sirve como una clave primaria y de igual manera tenemos más atributos: título, autor, país y tema.
ISBN Titulo Libros
Autor País Tema
Al realizar la relación relación se tiene que Libro Libro se relaciona con con usuario y es de uno a muchos, muchos, porque un solo usuario puede retirar hasta dos libros, por lo tanto como puede ser más de un libro el que puede sustraer un usuario y será una relación de uno a muchos 1: N y la cordialidad de usuario – libro sería (1,1) y (1, n). Uno o dos libros pueden salir por cada uno de los usuarios con su respectiva credencial. Usuario Usuario con sus atributos y ponemos como clave primaria el código No. De Carnet ya que es lo que nos está indicando nuestra lectura tenemos un código para usuario la cual es única y nos sirve como una clave primaria y de igual manera tenemos más atributos: Nombre y Teléfono.
No. Carnet Usuario
Nombre Teléfono
Al realizar la relación se tiene que Usuario – libros es de uno a muchos, porque hasta dos libros pueden salir por cada usuario y los libros son solicitados por cada usuario 1:N y la cordialidad de usuario – libros sería (1,1) y (1, n). Pedido
Pedido con sus atributos y ponemos como clave primaria el código ya que es lo que nos está indicando nuestra lectura tenemos un código para pedido la cual es única y nos sirve como una clave primaria y de igual manera tenemos más atributos: Fecha, Empleado.
Código Fecha
Pedido
Empleado
Al realizar la relación se tiene que libro – pedido uno a muchos porque puede haber o no haber pedido o un pedido de uno a muchos libros por lo tanto la relación es uno a muchos 1: N y la cordialidad de Libros-Pedido. Sería (1,n) y (0,1) . 1 libro puede pertenecer a uno o a ningún pedido, ya que podía estar por otros medios en la biblioteca (es un supuesto); pero todos los pedidos tienen que tener al menos un libro, ya que si no hubiera un libro mínimo, no tendría sentido el pedido en sí. Estanterías Estanterías con sus atributos y ponemos como clave primaria el código del No. estante ya que es lo que nos está indicando nuestra lectura tenemos un código para Estanterías la cual es única y nos sirve como una clave primaria y de igual manera tenemos más atributos: Lugar
No. Estantería Estanterías Lugar
Al realizar la relación se tiene que
libro – Estantería Estantería
uno a muchos porque en la
estantería hay muchos libros y libros habría uno en cada estantería de acuerdo al registro por lo tanto la relación es uno a muchos 1: N
Estantería. Sería (1, n) y (1,1). 1 libro puede pertenecer a una a estantalaría y las estanterías son ocupadas por muchos libros. Para la realización de la actividad utilizamos el programa MySQL Workbench, creando primero las entidades con sus atributos correspondientes (Figura 1) asignando las claves primarias a cada entidad habilitando la casilla que dice PK (primary key) y NN (not null).
Figura 1. Creación de las cinco entidades descritas en la actividad, con sus atributos en MySQL Workbench. Posteriormente procedemos a realizar las relaciones entre entidades (Figura 2)
Figura 2. Entidades con sus respectivas relaciones en MySQL Workbench.
Figura 3. Creación de las cinco entidades descritas en la actividad, con sus atributos en DBDesigner.
Figura 2. Entidades con sus respectivas relaciones en DBDesigner.
3. BIBLIOGRAFÍA.
Celma Giménez, M. C. (2003). Bases de datos relacionales. Madrid, relacionales. Madrid, España: Pearson Educación, S.A. EzequieL Rozic, S. (2004). Bases de datos y su aplicación. . Argentina: . Argentina: MP Ediciones S.A. Johnson, J. (2000). Base de datos. Modelos, lenguajes, diseño. México diseño. México : Oxford University Press México, S.A. de C.V.