Debe introducir al menos 3 caracteres en el buscador.
Inicio / Wikis / Cursos gratis / Curso de Microsoft Access 97 - ¿Cómo relacionar tablas?

Curso de Microsoft Access 97 - ¿Cómo relacionar tablas?

 ****- (40 opiniones)
CopyLeft Curso gratis de Centro de Tecnología Informática - 10 de Septiembre de 2005
Temas Relacionados: Microsoft Access
9. ¿Cómo relacionar tablas?
Diferencia de una base de datos relacional

La diferencia de las bases de datos relacionales con respecto a una base de datos plana consiste en que los datos sólo se introducen una sola vez en una tabla, pero gracias a las relaciones pueden aparecer en las tablas que se quiera.

Cualquier modificación sólo hay que realizarla una sola vez y automáticamente se realizará en todas las demás tablas. De este modo se ahorra mucho tiempo, espacio y exactitud en los datos que siempre estarán actualizados independientemente de la tabla en la que estemos.

Tipos de relaciones

Existen tres tipos de relaciones, que se explican a continuación. Más adelante se verá cómo quedan guardadas relaciones de este tipo en Access.

Relación uno a uno

Cada registro de la tabla A se relaciona sólo con un registro de una tabla B y cada registro de la tabla B se relaciona sólo con un registro de la tabla A.

Relaciones de este tipo se almacenan guardando en la tabla el identificador de la otra tabla con la que mantiene la relación.
 
Relación uno a varios

Cada registro de la tabla A está relacionado con varios registros de la tabla B y cada registro de la tabla B está relacionado con un sólo un registro de la tabla A.

Aplicando esto al ejemplo2 de este manual, una relación de este tipo se daría entre la tabla pacientes y la tabla médicos, ya que el mismo médico se hará cargo de varios pacientes. Un solo registro de la tabla de médicos se relaciona con varios registros de la tabla de pacientes. Pero un registro de la tabla de pacientes sólo se relaciona con un registro de la tabla médicos.

Relación varios a varios

Cada registro de la tabla A puede estar relacionado con más de un registro de la tabla B y cada registro de la tabla B puede estar relacionado con más de un registro de la tabla A.

Si existiera una base de datos con dos tablas: médicos y pacientes, con una relación directa entre ellos, un médico atendería muchos pacientes y un mismo paciente podría ser atendido por varios médicos. Varios registros de la tabla de médicos se relacionaría con varios registros de la tabla de pacientes.

Relaciones de este tipo se almacenan creando una tabla especial donde se colocan los identificadores de cada tabla y otros campos que puedan ser de utilidad, por ejemplo la fecha, la hora, comentarios acerca de la visita médica, etc. En el ejemplo 1 esta tabla especial es la tabla Visitas, donde aparecen tanto el código del médico como el del paciente.

 
Crear relaciones ente dos tablas
Para crear una relación entre las tablas de una base de datos primero es necesario cerrar todas las tablas. Con las tablas abiertas no se puede crear o modificar una relación. Para poder utilizar la integridad referencial será necesario que las tablas no tengan ningún registro.
Desde la ventana Base de datos, se pulsa el botón  o se selecciona el menú Herramientas|Relaciones. Automáticamente se abrirá la ventana Relaciones totalmente vacía.
Para añadir las tablas que van a estar relacionadas se pulsa el botón Mostrar tabla  o se selecciona el menú Relaciones|Mostrar Tabla. Aparecerá una ventana con el listado de las tablas:

Se seleccionan aquellas tablas/consultas que van a formar parte de una relación y se pulsa Agregar. Después de pulsar Agregar en la ventana Relaciones aparecerá la tabla en un recuadro con todos los campos.

Cuando ya no se quieran agregar mas tablas/consultas se pulsa el botón Cerrar. Quedará abierta únicamente la ventana Relaciones.

En este caso se van a incluir las tres tablas del ejemplo 1: Médicos, Pacientes y Visitas.
 

 
Para crear las relaciones entre estas tres tablas se relacionará primero médicos con visitas y luego pacientes con visitas.

Para relacionar médicos con visitas el campo en común es el código del doctor. Este dato está almacenado en la tabla médicos, por tanto, el campo se arrastrará desde médicos hasta Visitas. Para arrastrar el campo primero se selecciona, se hace clic, y sin soltar el botón del ratón se arrastra hasta situar el cursor sobre el campo Código del doctor de la tabla Visitas. Al arrastrar el campo el cursor se convertirá en un rectángulo pequeño.

Tras arrastrar el campo se abrirá esta ventana:

Dentro de la ventana hay dos columnas en las dos debe estar un campo con un contenido similar. No importa la coincidencia del nombre sino del contenido. Médicos es la tabla primaria en esta relación (es la que contiene los datos) y Visitas es la tabla secundaria (tomará los datos de médicos a través del campo común).

Si se pulsa el botón Tipo de combinación...se abrirá una ventana explicando los tres tipos de combinaciones. Automáticamente aparece seleccionada la primera combinación. En este ejemplo se puede dejar así.

Exigir integridad referencial

La integridad referencial son unas normas que mantienen la coherencia de datos entre dos tablas relacionadas. Estas normas son:

1. No puede haber registros en la tabla secundaria que no estén en la primaria.

2. No se puede borrar un registro de la tabla principal si hay registros en la secundaria.

Para poder exigir integridad referencial en una relación de uno a varios es necesario que :

1. El campo relacionado de la tabla principal sea la clave principal.

2. Los campos contengan el mismo tipo de datos ( si es autonumérico-numérico).

3. Ambas tablas deben pertenecer a la misma base de datos.

Access verificará que los campos cumplen todas las condiciones para que haya integridad referencial. Si no se cumplen todas las condiciones no permitirá que esa relación tenga integridad referencial.

Actualizar en cascada los campos relacionados se está indicando que si se modifica el valor de un campo desde un lado de la relación automáticamente se actualicen en todos los registros relacionados.

Eliminar en cascada los registros relacionados si se borra un registro de un lado de la relación se borrarán automáticamente todos los registros que estaban relacionados con él.

Cuando ya se han especificado las características de la relación se pulsa el botón Crear. Entre las dos tablas relacionadas aparecerá una línea. Esta línea simboliza la relación entre las dos tablas. Si la relación cumple la integridad referencial la línea será más gruesa.

A continuación se creará la relación entre Pacientes y Visitas. Y se exigirá integridad referencial en las dos relaciones. Para exigir la integridad referencial se hace doble clic sobre la línea de relación, se volverá abrir la ventana de la relación.

Una vez se ha terminado de crear las relaciones entre las tablas se guardan. Para guardar se selecciona el botón guardar o el menú Archivo|Guardar. Después de guardar ya se puede cerrar la ventana de relaciones. Si se cierra antes de guardar, se abrirá un mensaje de aviso.

Access permite guardar las relaciones en la Base de Datos. Esto será muy importante para que siempre que se lleven a cabo modificaciones en los datos se tenga en cuenta que las relaciones están presentes entre los mismos y no se puedan infringir las reglas de consistencia vigentes.

Autor y licencia de 'Curso de Microsoft Access 97 - ¿Cómo relacionar tablas?'
Centro de Tecnología Informática Extraído de: http://www.unav.es/cti CopyLeft
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.

Wikis relacionados con 'Curso de Microsoft Access 97 - ¿Cómo relacionar tablas?'

Completo curso de este gestor de bases de datos, que permite introducir y almacenar datos,... Más »
Completo curso del procesador de textos Microsoft Word.
Completo manual de Excel, editor de hojas de cálculo integradas en libros de trabajo. Un... Más »
PowerPoint es una aplicación que está dirigida fundamentalmente a servir de apoyo en presentaciones o... Más »
Completo curso del procesador de textos Microsoft Word para la versión XP.
¿Estás seguro de que deseas eliminar este capítulo?