martes, 4 de noviembre de 2014

Empleados y practicantes (Actividad en clase atrasada)



TABLAS DE EJERCICIOS ANTERIORES (Actividad atrasada)


Problema #1

Se quiere diseñar una base de datos relacional que almacene información relativa a los zoos existentes en el mundo, así como las especies animales que éstos albergan. De cada zoo se conoce el nombre, ciudad y país donde se encuentra, tamaño (en m2) y presupuesto anual. De cada especie animal se almacena el nombre vulgar y nombre científico, familia a la que pertenece y si se encuentra en peligro de extinción.
Además, se debe guardar información sobre cada animal que los zoos poseen, como su número de identificación, especie, sexo, año de nacimiento, país de origen y continente.



Problema #2

Se quiere diseñar una base de datos relacional para gestionar los datos de los socios de un club náutico. De cada socio se guardan los datos personales y los datos del barco o barcos que posee: número de matrícula, nombre, número del amarre y cuota que paga por el mismo. Además, se quiere mantener información sobre las salidas realizadas por cada barco, como la fecha y hora de salida, el destino y los datos personales del patrón, que no tiene por qué ser el propietario del barco, ni es necesario que sea socio del club.




Problema #3
Se quiere diseñar una base de datos relacional para almacenar información sobre los asuntos que lleva un gabinete de abogados. Cada asunto tiene un número de expediente que lo identifica, y corresponde a un solo cliente. Del asunto se debe almacenar el período (fecha de inicio y fecha de archivo o finalización), su estado (en trámite, archivado, etc.), Así como los datos personales del cliente al que  pertenece (DNI, nombre, dirección, etc.). Algunos asuntos son llevados por uno o varios procuradores, de los que nos interesan también los datos personales.






lunes, 3 de noviembre de 2014

**************** EVALUACIÓN INTERMEDIA UNIDAD 5****************


 Problema #1
Supongamos que se nos ha encargado el diseño de una biblioteca digital. Para
realizar nuestra tarea, hemos de comenzar diseñando la base de datos que dará soporte a las
distintas aplicaciones que posteriormente se irán implementando. En principio, la única
información de la que disponemos es la siguiente:
· Nuestra biblioteca digital ha de almacenar información bibliográfica (título, autor, edición,
ISBN…) de distintos títulos.
· Cada título de nuestra biblioteca digital se encuentra almacenado en una o varias URLs 
alternativas.
· Además, cada título se encuentra catalogado: un título puede corresponder a una o más
categorías diferentes. Dichas categorías, por su parte, se encuentran organizadas de forma
jerárquica (una categoría puede tener varias subcategorías, si bien sólo puede  estar 
englobada por una supercategoría).
· Los usuarios del sistema han de identificarse para poder utilizar nuestra biblioteca digital,
que utilizará las técnicas más avanzadas de protección de datos.
· Al estilo de algunas librerías de Internet como Amazon, los usuarios del sistema podrán
evaluar y escribir comentarios acerca de los títulos albergados en la biblioteca. La
evaluación se hará clasificando los títulos de 1 a 5 estrellas en función de las preferencias
del usuario y el conjunto de las evaluaciones realizadas por los distintos usuarios servirá
para recomendar unos títulos frente a otros.
Diseñar una base de datos relacional que nos permita almacenar toda la información relativa a
nuestra biblioteca digital:
a) Identificar las entidades de nuestro modelo y los atributos correspondientes a cada una de
tales entidades.
b) Analizar las relaciones existentes entre las distintas entidades y determinar su cardinalidad
(uno a uno, uno a muchos, muchos a muchos).
c) Dibujar un diagrama entidad/relación que represente el esquema lógico correspondiente al
modelo de datos definido por las entidades y relaciones obtenidas en los apartados
anteriores.
d) A partir del diagrama, obtener el conjunto de tablas que nos permitirá implementar nuestro
modelo en un sistema gestor de bases de datos relacionales.        




problema #2
Supongamos que se nos ha encargado el diseño de una base de datos que sirva de soporte al
sistema de gestión de las nóminas de una empresa. Tras analizar detenidamente el problema,
averiguamos que nuestro sistema debe cumplir los siguientes requisitos: 
• La empresa tiene un conjunto de empleados trabajando con contrato (un empleado puede
firmar varios contratos a lo largo de su carrera profesional).
• Para cada empleado, el sistema almacena sus datos personales (DNI, nombre, apellidos,
teléfono, dirección) y el número de su cuenta corriente para realizar las transferencias
correspondientes a las nóminas.
• Cada contrato firmado por un empleado tiene una fecha de alta, una fecha de baja (nula si el
contrato es indefinido), una categoría asociada y un puesto de destino.
• El sueldo base de un empleado depende de su categoría.
• En función del puesto de destino del empleado, el empleado puede recibir uno o varios
complementos, que se sumarán al sueldo base del empleado.
• Además, por su antigüedad en la empresa, el empleado cobrará trienios (cuyo importe
depende de la categoría de su contrato actual).
• Por último, el empleado también cobrará complementos por los cargos que desempeñe
(durante la duración de su ocupación del cargo, que no tiene por qué coincidir con la de su
contrato).
• De las percepciones salariales indicadas en los puntos anteriores, la nómina de cada empleado
incluirá una serie de deducciones (p.ej. aportaciones  seguro social, impuesto sobre la renta )
• El sistema debe almacenar todas las nóminas emitidas mensualmente e incluir
automáticamente tanto los distintos conceptos correspondientes a percepciones salariales del
empleado como los distintos tipos de deducciones a los que está sujeta su nómina.









problema #3
 Problema de diseño de bases de datos
 Supongamos que se nos ha encargado el desarrollo de un sistema de información para 
una galería de arte. Tras analizar el problema, hemos obtenido la siguiente lista de requisitos:  
• El sistema ofrecerá información acerca de las distintas exposiciones que estén programadas 
(título, descripción, fecha de inauguración y fecha de clausura). 
• En cada exposición se expondrán obras de distintos artistas. Cada obra vendrá identificada 
por un número de registro. El sistema informará acerca del título, artista, estilo y precio de 
salida de cada una de las obras de arte expuestas en las exposiciones. 
• Cada obra tiene un propietario, que suele ser el artista que la creó, aunque esto no es 
necesariamente así. 
• Las obras expuestas se pueden comprar haciéndole ofertas a sus propietarios. Al término de 
la exposición, el propietario de una obra puede vender la obra a la persona que haya 
realizado la mejor oferta. 
NOTA: Es esencial que en la base de datos no se almacenen datos de forma redundante, para lo 
cual hemos de tener en cuenta que una misma persona puede ser propietaria de una obra de arte 
y realizar ofertas para comprar otras obras de arte. De hecho, incluso puede ser responsable de 
la creación de alguna de las obras expuestas. 
Diseñe una base de datos relacional para el problema planteado: 
a) Identifique las entidades y los atributos correspondientes a cada una de las entidades, 
indicando explícita mente cuáles serán las claves primarias de las distintas entidades. 
b) Analice las relaciones existentes entre las distintas entidades y determine su cardinalidad. 
c) Dibuje un diagrama entidad/relación que represente  el modelo de datos definido por las 
entidades y las relaciones identificadas en los apartados anteriores. 
d) A partir del diagrama, obtenga el conjunto de tablas que nos permita implementar nuestro 
modelo en un sistema gestor de bases de datos relacionales, indicando las claves primarias 
de todas y cada una de las tablas de nuestra base de datos.










   

jueves, 30 de octubre de 2014

Ejercicios

problema #1

Se quiere diseñar una base de datos relacional que almacene información relativa a los zoos existentes en el mundo, así como las especies animales que éstos albergan. De cada zoo se conoce el nombre, ciudad y país donde se encuentra, tamaño (en m2) y presupuesto anual. De cada especie animal se almacena el nombre vulgar y nombre científico, familia a la que pertenece y si se encuentra en peligro de extinción.

Además, se debe guardar información sobre cada animal que los zoos poseen, como su número de identificación, especie, sexo, año de nacimiento, país de origen y continente.



Problema #2
Se quiere diseñar una base de datos relacional para gestionar los datos de los socios de un club náutico. De cada socio se guardan los datos personales y los datos del barco o barcos que posee: número de matrícula, nombre, número del amarre y cuota que paga por el mismo. Además, se quiere mantener información sobre las salidas realizadas por cada barco, como la fecha y hora de salida, el destino y los datos personales del patrón, que no tiene porque ser el propietario del barco, ni es necesario que sea socio del club.


Problema#3 
Se quiere diseñar una base de datos relacional para almacenar información sobre los asuntos que lleva un gabinete de abogados. Cada asunto tiene un número de expediente que lo identifica, y corresponde a un solo clientve. Del asunto se debe almacenar el período (fecha de inicio y fecha de archivo o finalización), su estado (en trámite, archivado, etc.), así como los datos personales del cliente al que  ertenece (DNI, nombre, dirección, etc.). Algunos asuntos son llevados por uno o varios procuradores, de los que nos interesa también los datos personales.










Revision


viernes, 26 de septiembre de 2014

Resumen



Modelo Relacional:
El modelo relacional es muy simple de usar por eso se ha convertido en la herramienta mas usada por personas que programan y diseñan bases de datos.

Estructura de las bases de datos relacionales:
Son un conjunto de tablas, a cada una de las cuales se les da un nombre exclusivo, cada fila de la tabla representa una relacion entre un conjunto de valores.



Estructura basica: Ejemplo.
Se crea una tabla, en la cual cuenta con tres cabecera que son: numero-cuenta, nombre-sucursal y saldo. Estas cabeceras se les conoce como atributos. Cada atributo tiene asignado valores que son llamados dominio.

*En el atributo nombre-sucursal, el dominio es el conjunto de los nombres de las sucursales, entonces, D1 D1 es el conjunto de todos los numeros de cuenta, D2 es el conjunto de todos los nombres de sucursal y D3 es el conjunto de los saldos.

*Todas las filas de cuenta deben consistir en una tupla (v1, v2, v3)
V1 es un  numero de cuenta, entonces v1 esta en el dominio D1
V2 es un  numero de cuenta, entonces v2 esta en el dominio D2
V3 es un  numero de cuenta, entonces v3 esta en el dominio D3.


 Se utilizara los terminos matematicos  relacion y tupla en vez de tabla y fila.
La variable tupla representa al conjunto de todas las tuplas.


Es posible que algunos atributos tengan el mismo dominio.
Por ejemplo, tenemos una relacion cliente, y otra relacion llamada empleado. Estas relaciones pueden tener el mismo dominio como nombre-cliente y nombre empleado.

Tambien existe el valor nulo. Por ejeemplo, en la relacion cliente exista la tupla llamada numero-telefono, puede ocurrir que el cliente no tenga numero de telefono, a esto se le conoce como valor nulo.

ESQUEMA BASE DE DATOS