jueves, 26 de agosto de 2010

BASE DE DATOS EMPRESA





TRABAJADORES
COD_TRA
NOMBRE
APELLIDOS
POBLACION
CIUDAD
PROVINCIA
FECHA_NAC
FECHA_ING
SUELDO





























PRODUCTOS
COD_PRO
NOMBRE
FOTO
PRECIO
FECHA_ENVASADO
FECHA_CADUCIDAD
ORIGEN















CLIENTES
COD_CLIENTES
NOMBRE
APELLIDOS
TELEFONO
DIRECCION











PROVEEDORES
COD_PROVEEDOR
NOMBRE
 APELLIDOS
TELEFONO
DIRECCION












Teniendo estas tablas, se pide:

  • Realizar el diagrama de entidad-relación
  • Crear la base de datos
  • Crear las relaciones entre tablas





Partimos de la base de que además de estas cuatro tablas podríamos crear varias tablas secundarias, pero como es un ejercicio básico de relaciones, lo haremos solo con estas.


Esquema E-R


Hacer la base de datos

1º Abrir Access.
2º Base de datos en blanco
3º Nombrar y ubicar donde la queremos guardar.
4º Crear las tablas tal y como hemos visto antes. En este punto, tenemos que tener en cuenta las relaciones entre las tablas, ya que tenemos que introducir en las secundarias las claves foráneas, es decir, las claves principales de las tablas cuya relación es “1” las tenemos que poner en las tablas cuya relación es “∞”.
                Por lo tanto, la tabla PRODUCTOS, aparte de los campos que ya tenemos en el diseño de arriba, llevará las claves foráneas COD_PROVEEDORES y COD_CLI (con el mismo tipo de datos que están en sus tablas de origen)
                Lo mismo con la tabla CLIENTES. Añadiremos la clave foránea COD_TRA (clave principal de la tabla TRABAJADORES)
                A la hora de crear las tablas da igual el orden en el que las creemos. Sin embargo, a la hora de introducir datos en las tablas se tendrá que hacer siguiendo un orden. Primero los de las tablas principales (relación de 1) y luego las tablas secundarias (relación de ∞) Por ejemplo, para introducir datos en la tabla PRODUCTOS, necesitaremos haber introducido datos en las tablas TRABAJADORES Y CLIENTES, ya que son datos que nos va a solicitar al tener las claves foráneas (COD_PROVEEDORES y COD_CLI) en la tabla PRODUCTOS. Lo mismo ocurre con la tabla CLIENTES, donde tenemos la clave foránea COD_TRABAJADOR. En el caso de introducir datos en las tablas secundarias antes que en las principales, nos saldrá un mensaje de error y no nos dejará continuar. (* Integridad referencial)

                Nos quedarían las tablas de la siguiente forma:




Establecer las relaciones en Access

                Una vez hechas las tablas las cerramos. Vamos al menú “Herramientas de base de datos”, y ahí vamos a “Mostrar u ocultar” y seleccionamos “Relaciones”. Nos aparece la ventana de “mostrar tabla” (tabla, consultas, ambas) En tabla tenemos las que acabamos de crear. Como vamos a crear las relaciones, seleccionamos todas haciendo doble clic en cada una de ellas. Se van colocando en la ventana Relaciones. Una vez seleccionadas todas cerramos la ventana mostrar tabla. El siguiente paso es establecer las relaciones tal cual las tenemos en el modelo E-R y con los campos que hemos creado.
                TRABAJADORES con CLIENTES. Pinchamos sobre la clave principal de TRABAJADORES, COD_TRA y sin soltar arrastramos hasta su homónima en la tabla CLIENTES, y soltamos. Nos aparece el recuadro siguiente:



               Aquí vemos la tabla de origen de la consulta, la tabla de la consulta relacionada y el campo clave y foráneo. Los campos relacionados no tienen que tener los mismos nombres, pero deben tener el mismo tipo de datos. Cuando los campos coincidentes son campos de tipo número”, deben tener el mismo valor en la propiedad “tamaño del campo”. Se puede hacer coincidir un campo autonumérico con un campo número si ambos tienen establecido el mismo valor en la propiedad tamaño del campo.
                Además, para hacer una correcta relación debemos marcar la casilla “Exigir integridad referencial” (*). Lo que hace es evitar la creación de registros huérfanos, es decir, de registros que no tienen conexión con una tabla principal.
                La exigencia de integridad referencial impide eliminar o modificar valores de registro de una tabla principal de la que dependen registros relacionados. Con esta casilla de verificación estamos dando garantía a los datos para que los cambios realizados en una tabla no afecten a la relación, es decir:
  •    Impide añadir un registro en la tabla relacionada si no existía anteriormente en la tabla principal.
  •     No se puede eliminar el registro principal sin antes haber eliminado los datos de los registros relacionados
Al activar esta casilla, se activan dos nuevas:

  1.   Actualizar en cascada los campos relacionados. Si esta casilla está activada, al cambiar el dato de la tabla principal se actualizarán automáticamente los registros que coincidan con el registro conectado mediante la relación.
  2.     Eliminar en cascada los registros relacionados. Si esta casilla está activa, al eliminar un registro en la tabla principal, elimina todos los registros enlazados en la tabla relacionada.
Debemos marcar las tres casillas y pulsar “crear”. A continuación vemos como se establece la relación de 1,∞.  Hacemos lo mismo con las otras tablas.
Las relaciones quedarían entonces de la siguiente manera:


Guardamos y ya podemos introducir datos. Abrimos las tablas en modo Ver y Hoja de datos. Generalmente los datos se introducen con Formularios, pero como todavía no hemos llegado a este punto, lo haremos directamente en las tablas, para así pasar a las Consultas y ver los resultados.



No hay comentarios: