lunes, 3 de octubre de 2016

EJERCICIOS EN CLASE

 Ejercicios propuesto en clase

Ejercicio 1.

Una liga de fútbol profesional,  ha decidido informatizar sus instalaciones creando una base de datos para guardar la información de los partidos que se juegan en la liga.

Se desea guardar en primer lugar los datos de los jugadores. De cada jugador se quiere guardar el nombre, fecha de nacimiento y posición en la que juega (portero, defensa, centro campistas) Cada jugador tiene un código de jugador que lo identifica de manera única.

De cada uno de los equipos de la liga es necesario registrar el nombre del equipo, nombre del estadio en el que juega, el aforo que tiene, el año de fundación del equipo y la ciudad de la que es el equipo. Cada equipo también tiene un código que lo identifica de manera única. Un jugador solo puede pertenecer a un único equipo.

De cada partido que los equipos de la liga juegan hay que registrar la fecha en la que se juega el partido, los goles que ha metido el equipo de casa y los goles que ha metido el equipo de fuera. Cada partido tendrá un código numérico para identificar el partido.

También se quiere llevar un recuento de los goles que hay en cada partido. Se quiere almacenar el minuto en el que se realizar el gol y la descripción del gol. Un partido tiene varios goles y un jugador puede meter varios goles en un partido.
Por último se quiere almacenar, en la base de datos, los datos de los presidentes de los equipos de fútbol (dni, nombre, apellidos, fecha de nacimiento, equipo del que es presidente y año en el que fue elegido presidente). Un equipo de fútbol tan sólo puede tener un presidente, y una persona sólo puede ser presidente de un equipo de la liga


Base de Datos Modelo Entidad-relación Equipo de Fútbol


Ejercicio 2.


Se desea informatizar la gestión de un centro de enseñanza para llevar el control de los alumnos matriculados y los profesores que imparten clases en ese centro.

De cada profesor y cada alumno se desea recoger el nombre, apellidos, dirección, población, DNI, fecha de nacimiento, código postal y teléfono.

Los alumnos se matriculan en una o más asignaturas, y de ellas se desea almacenar el código de asignatura, nombre y número de horas que se imparten a la semana. Un profesor del centro puede impartir varias asignaturas, pero una asignatura sólo es impartida por un único profesor. De cada una de las asignaturas se desea almacenar también la nota que saca el alumno y las incidencias que puedan darse con él.

Además, se desea llevar un control de los cursos que se imparten en el centro de enseñanza. De cada curso se guardará el código y el nombre. En un curso se imparten varias asignaturas, y una asignatura sólo puede ser impartida en un único curso.

Las asignaturas se imparten en diferentes aulas del centro. De cada aula se quiere almacenar el código, piso del centro en el que se encuentra y número de pupitres de que dispone. Una asignatura se puede dar en diferentes aulas, y en un aula se pueden impartir varias asignaturas. Se desea llevar un registro de las asignaturas que se imparten en cada aula. Para ello se anotará el mes, día y hora en el que se imparten cada una de las asignaturas en las distintas aulas.


La dirección del centro también designa a varios profesores como tutores en cada uno de los cursos. Un profesor es tutor tan sólo de un curso. Un curso tiene un único tutor. Se habrá de tener en cuenta que puede que haya profesores que no sean tutores de ningún curso”.

Base de Datos Modelo Entidad-relación Institución del Rosario 

miércoles, 14 de septiembre de 2016

EMPRESA PROYECTOS

Una empresa desea diseñar una base de datos para almacenar en ella toda la información generada en cada uno de los proyectos que ésta realiza. De cada uno de los proyectos realizados interesa almacenar el código, descripción, cuantía del proyecto, fecha de inicio y fecha de fin. Los proyectos son realizados por clientes de los que se desea guardar el código, teléfono, domicilio y razón social. Un cliente puede realizar varios proyectos, pero un solo proyecto es realizado por un único cliente.

En los proyectos participan colaboradores de los que se dispone la siguiente información: nit, nombre, domicilio, teléfono, banco y número de cuenta. Un colaborador puede participar en varios proyectos.

Los proyectos son realizados por uno o más colaboradores. Los colaboradores de los proyectos reciben pagos. De los pagos realizados se quiere guardar el número de pago, concepto, cantidad y fecha de pago. También interesa almacenar los diferentes tipos de pagos que puede realizar la empresa. De cada uno de los tipos de pagos se desea guardar el código y descripción. Un tipo de pago puede pertenecer a varios pagos”.



Diagrama Entidad-Relacion. Empresa de Proyectos



domingo, 4 de septiembre de 2016

CONCEPTOS BASICOS, TIPOS Y CLASES DE BASES DE DATOS

Conceptos básicos de las Bases de Datos
  • Una base de datos es una herramienta para recopilar y organizar la información. Las Bases de datos pueden almacenar información sobre personas, productos y pedidos.
  • Se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada.   
  • 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. 


Tipos de Bases de Datos 

Entre los diferentes tipos de base de datos, podemos encontrar los siguientes:

  • MySql: es una base de datos con licencia GPL basada en un servidor. Se caracteriza por su rapidez. No es recomendable usar para grandes volúmenes de datos.

  • PostgreSql y Oracle: Son sistemas de base de datos poderosos. Administra muy bien grandes cantidades de datos, y suelen ser utilizadas en intranets y sistemas de gran calibre. 



  • Access: Es una base de datos desarrollada por Microsoft. Esta base de datos, debe ser creada bajo el programa access, el cual crea un archivo .mdb con la estructura ya explicada. 


  • Microsoft SQL Server: es una base de datos más potente que access desarrollada por Microsoft. Se utiliza para manejar grandes volúmenes de informaciones.


Según su estructura

Modelo Jerárquico
Estas son bases de datos que, como su nombre lo indica, almacenan información en una estructura jerárquica. En este modelo los datos se organizan en una forma similar a un árbol (visto al revés), en donde un nodo padre de información puede tener varios hijos.

Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran volumen de información y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento.

Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.

Modelo en Red

Éste es un modelo ligeramente distinto del jerárquico, en donde su diferencia fundamental es la modificación del concepto de un nodo, permitiendo que un mismo nodo tenga varios padres.

Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al problema de redundancia de datos, pero aun así, la dificultad que significa administrar la información en una base de datos de red, ha significado que sea un modelo utilizado en su mayoría por programadores más que por usuarios finales.
Colecciones de registros y las relaciones entre datos se representan mediante enlaces dirigidos.


Modelo Relacional

Éste es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. 




Modelo Orientado a Objetos

Es una base de datos en el sentido de la definición introductoria, donde los elementos de datos son objetos y las relaciones se mantienen por medio inclusión lógica. Las entidades de aplicación están representadas como clases. La auto descripción se obtiene porque las clases son meta objetos que contiene los nombres de atributos y métodos de señal.


Según la Variabilidad

Bases de datos estáticas

Éstas son bases de datos de sólo lectura, utilizadas primordialmente para almacenar datos históricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a través del tiempo, realizar proyecciones y tomar decisiones; ejemplo de éstas, son los Data Were Hause ó Bodegas de Datos.


Bases de datos dinámicas

Éstas son bases de datos donde la información almacenada se modifica con el tiempo, permitiendo operaciones como actualización y adición de datos, además de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de información de una tienda de abarrotes, una farmacia, un videoclub, etc. Éstas también se conocen como bases de datos Transaccionales.




Clases de Datos (Access)

Texto: permite almacenar cualquier tipo de texto, tanto caracteres como dígitos y caracteres especiales. Tiene una longitud por defecto de 50 caracteres, siendo su longitud máxima de 255 caracteres. Normalmente se utiliza para almacenar datos como nombres, direcciones o cualquier número que no se utilice en cálculos, como números de teléfono o códigos postales.

Memo: se utiliza para textos de más de 255 caracteres como comentarios o explicaciones. Tiene una longitud máxima de 65.536 caracteres. Access recomienda para almacenar texto con formato o documentos largos adjuntar el archivo. En Access 2010 se puede ordenar o agrupar por un campo Memo, pero sólo se tendrán en cuenta para ello los 255 primeros caracteres.

Número: para datos numéricos utilizados en cálculos matemáticos. Dentro del tipo número la propiedad tamaño del campo nos permite concretar más. 

Fecha/Hora: para la introducción de fechas y horas desde el año 100 al año 9999.

Moneda: para valores de dinero y datos numéricos utilizados en cálculos matemáticos en los que estén implicados datos que contengan entre uno y cuatro decimales. La precisión es de hasta 15 dígitos a la izquierda del separador decimal y hasta 4 dígitos a la derecha del mismo. Access recomienda utilizar el tipo Moneda para impedir el redondeo de cifras en los cálculos. Un campo Moneda tiene una precisión de hasta 15 dígitos a la izquierda de la coma decimal y 4 dígitos a la derecha. 

Auto-numeración: número secuencial (incrementado de uno a uno) único, o número aleatorio que Microsoft Access asigna cada vez que se agrega un nuevo registro a una tabla. Los campos Auto-numeración no se pueden actualizar.

Sí/No: valores Sí y No, y campos que contengan uno de entre dos valores (Sí/No, Verdadero/Falso o Activado/desactivado).

Objeto OLE: objeto como por ejemplo una hoja de cálculo de Microsoft Excel, un documento de Microsoft Word, gráficos, imágenes, sonidos u otros datos binarios. Si trabajas con bases de datos creadas con otras versiones de Access, los archivos insertados como objeto OLE seguirán funcionando perfectamente. Pero si lo que estás haciendo es crear una nueva base de datos, es interesante que no utilices este tipo de datos, porque a partir de la versión 2007 empezó a considerarse obsoleto y a utilizar, en su lugar, el tipo Datos adjuntos que veremos más adelante.

Hipervínculo: texto o combinación de texto y números almacenada como texto y utilizada como dirección de hipervínculo. Una dirección de hipervínculo puede tener hasta tres partes: Texto: el texto que aparece en el campo o control. Dirección: ruta de acceso de un archivo o página. Subdirección: posición dentro del archivo o página. Sugerencia: el texto que aparece como información sobre herramientas.

Datos adjuntos: Puede adjuntar archivos de imágenes, hoja de cálculo, gráficos y otros tipos de archivos admitidos, a los registros de la base de datos de forma similar a como adjunta archivos a los mensajes de correo electrónico. Los campos de datos adjuntos ofrecen mayor flexibilidad que los campos de tipo Objeto OLE, y utilizan el espacio de almacenamiento de manera más eficaz porque no crean una imagen de mapa de bits del archivo original.


Calculado: Un campo calculado es un campo cuyo valor es resultado de una operación aritmética o lógica que se realiza utilizando otros campos. Por ejemplo podría ser un campo Total que calcula su valor multiplicando Precio * Cantidad en una línea de pedido.