Teoria de Access - IES FRANCISCO GINER DE LOS RÍOS...

24
BASE DE DATOS ACCESS Tecnologías de la Información y la Comunicación ( 1º Bachillerato)

Transcript of Teoria de Access - IES FRANCISCO GINER DE LOS RÍOS...

BASE DE DATOS ACCESS

Tecnologías de la Información y la Comunicación ( 1º Bachillerato)

Base de datos – Access - 1/24

Departamento de Tecnología IES Fco. Giner de los Ríos

1.- GESTORES DE BASES DE DATOS RELACIONALES

• Concepto de base de datos

Una base de datos es un soporte estructurado de datos almacenados en un formato electrónico. Frente a la información impresa tiene como principal ventaja el permitirnos recuperar exactamente la información deseada y hacerlo de distintas formas. Además, podemos modificar muchos datos en muy poco tiempo. Todo ello es posible gracias a que el formato electrónico nos permite realizar determinados procesos (consultar datos, ordenarlos, modificarlos, imprimir informes, etc. de forma rápida y eficaz.

Un sistema gestor de base de datos como Access2003 permite almacenar la información y recuperarla de forma relaciona. Es decir, podemos organizar la información en varias tablas relacionadas. Por ejemplo, en una base de datos podemos tener una tabla con los productos que vende nuestra empresa, otra con los clientes y otra más con las ventas realizadas. Si las tablas están correctamente relacionadas, podremos consultar entre otras muchas cosas, a qué clientes les hemos vendido un determinado producto.

• Entorno de trabajo de Access

1. Barra de título. 2. Barra de menús 3. Barra de herramientas. 4. Botones minimizar, restaurar-maximizar y cerrar la ventana. 5. Barra de estado. 6. Panel de tareas.

• Crear una base de datos

Hacer clic en Archivo / Nuevo y elegir Base de datos en blanco … de la categoría “Nuevo archivo” del Panel de tareas.

Automáticamente aparecerá el cuadro de diálogo Archivo nueva base de datos , en el que se deberá escoger la unidad y la carpeta donde se desea guardar el archivo o, así como, el nombre del archivo (Por ejemplo, en la

Base de datos – Access - 2/24

Departamento de Tecnología IES Fco. Giner de los Ríos

carpeta Base de datos, con el nombre ALMACÉN). Para confirmar y validar la creación de la base de datos hacemos clic en Crear

• Los objetos de Access Al crear la base de datos aparecerá la ventana de la base de datos:

En la parte izquierda de la ventana se puede ver los distintos tipos de objeto que componen la base de datos:

1. Tablas .- son el conjunto de datos que forman el contenido de la

base de datos. 2. Consultas .- Permiten tratar la información: seleccionar, ordenar,

eliminar, modificar, etc. 3. Formularios .- son un diseño realizado para introducir, modificar o

visualizar los datos de una tabla o consulta.

Base de datos – Access - 3/24

Departamento de Tecnología IES Fco. Giner de los Ríos

4. Informes .- son diseños para imprimir los datos de las tablas o las consultas.

5. Páginas .- es un tipo especial de página Web diseñada para visualizar datos y trabajar con ellos desde Internet.

6. Macros .- son un conjunto de operaciones grabadas que se pueden ejecutar para realizar de forma automática operaciones repetitivas.

7. Módulos .- son programas realizados en el lenguaje de programación Visual Basic para Aplicaciones.

• Creación de una tabla Una tabla es un conjunto de información que trata un tema concreto y

que se estructura en forma de registros (filas) y campos (columnas). Las tablas son los objetos principales de una base de datos; ésta no tendría sentido si no contuviese alguna tabla, ya que las tablas son las que almacenan la información.

Para crear la tabla hacer clic en Tablas , y después doble clic en Crear una tabla en vista Diseño .

Base de datos – Access - 4/24

Departamento de Tecnología IES Fco. Giner de los Ríos

Aparecerá la ventana Vista de Diseño , en la cuál crearemos la estructura de la tabla.

Para crear la estructura de la tabla debemos empezar por dar nombre a

cada campo y establecer el tipo de datos que va a contener. Si lo deseamos, podemos añadir una descripción de cada campo en el caso de que el nombre no sea suficientemente descriptivo. Es conveniente, aunque no obligatorio, que los nombres de los campos estén formados solo por letras, números o guiones bajos, prescindiendo de los espacios. Por ejemplo: nombre_ producto.

• Tipos de datos

Al establecer el tipo de datos para un campo, elegiremos una de estas diez opciones:

1. Texto: Acepta cualquier carácter de texto o número. Tiene un

tamaño máximo de 255 caracteres. 2. Memo : Un campo Memo puede contener hasta 65536 caracteres de

texto o número. 3. Número : Se utiliza para caracteres numéricos sobre los que se

vayan a realizar cálculos matemáticos. 4. Fecha / Hora : Admite valores de fecha y hora, desde el año 100 al

9999. 5. Moneda : Para valores monetarios. Utiliza el separador de miles y el

signo monetario configurado en Windows. Permite un máximo de 15 dígitos y 4 decimales.

6. Autonumérico : Es un campo numérico cuyo contenido lo genera el programa. Pueden generarse tres tipos de contenidos: secuencial (incrementando de 1 en 1), aleatorio o id de réplica. · Los números generados por un campo autonumérico no pueden ser eliminados ni modificados.

Base de datos – Access - 5/24

Departamento de Tecnología IES Fco. Giner de los Ríos

7. Sí / No: Es un campo que sólo acepta valores del tipo Sí o No, Verdadero o Falso.

8. Objeto OLE: Se utiliza para contener en él un objeto (hoja de cálculo, gráfico, imagen, etc.) creado en otra aplicación, que se puede vincular o incrustar en una base de datos de Access.

9. Hipervínculos : Nos permiten enlazar con otros objetos, pudiendo ser su destino una página Web, una dirección de correo electrónico, un archivo, etc.

10. Asistente para búsquedas : Pone en marcha un asistente que nos permite crear una lista de valores, dándole los valores o tomándolos de otra tabla o consulta.

• Propiedades de los campos

Al establecer el nombre y el tipo de datos de un campo, en la parte inferior de la ventana Vista diseño aparecerán las propiedades del campo. Estas propiedades tienen establecidos unos valores que podemos cambiar.

1. Tamaño de campo : Longitud máxima que podrá tener el contenido

del campo. Los valores que podemos establecer en esta propiedad varían según el tipo de datos: o Texto: Admite un valor entre O y 255 caracteres. El valor por

defecto es de 50 caracteres. o Número: Puede tomar distintos valores, con un tamaño de

ocupación de memoria de almacenamiento progresivamente creciente. El valor por defecto es entero largo. - Byte: Almacena números entre O y 255 (no admite

fracciones). - Entero: Almacena números entre -32.768 y 32.767 (no

admire fracciones) - Entero largo: Almacena números entre -2.147.483.648 y

2.147.483.647. (No admire fracciones). Es el valor predeterminado.

- Simple: Para números muy grandes. Permite usar 7 decimales

- Doble: Para números muy grandes. Permite usar 15 decimales.

- Decimal: Para números muy grandes. Permite usar 28 decimales.

- ID de réplica: Se utiliza cuando se realizan réplicas. Sirve para asignar un identificador exclusivo a la réplica..

2. Formato : Con los siguientes ejemplos podemos ver los formatos

existentes para los datos numéricos o de fecha. Para otros tipos de datos usaremos formatos personalizados. o Datos numéricos y monetarios.

- Número general: 3456,789 - Moneda: 3.457 € - Euro: 3.457 €

Base de datos – Access - 6/24

Departamento de Tecnología IES Fco. Giner de los Ríos

- Fijo: 3456,79 - Estándar: 3.456,79 - Porcentaje: 300% - Científico: 3,46E+03

o Fecha/Hora - Fecha general: 19/06/9415:34:23 - Fecha larga: Domingo, 19 de junio de 1994 - Fecha mediana: 19-jun-94 - Fecha corta: 19106/94 - Hora larga: 15:34:23 - Hora mediana: 5:34 p.m. - Hora corta: 5:34

3. Lugares decimales : es el número de cifras decimales a la derecha

del separador decimal. Se utiliza sólo en los campos numéricos o monetarios.

4. Máscara de entrada : facilita la introducción de datos en los campos

y controla los valores que pueden se introducidos. Sólo es aplicable a datos de texto, numéricos, moneda y fecha /hora. La máscara de entrada se realiza siguiendo unas reglas o través un asistente que aparece haciendo clic sobre la misma.

5. Título : Sirve para establecer un encabezado para la columna de la

tabla distinto al que hemos establecido en el nombre del campo. Por ejemplo, si el nombre de un campo es nombre-producto puede hacer que en el encabezado de la columna sea sustituido por Nombre Producto.

6. Valor predeterminado : Es un valor preestablecido que puede

modificarse al introducir los datos en la tabla. No es aplicable a los tipos de datos objeto OLE y autonumérico.

7. Regla de validación : Limita los datos que pueden ser introducidos

en un campo según una regla establecida. Por ejemplo, en un campo Edad puede impedir que se introduzca una edad menor de 18 años con la regla >=18. No es aplicable a los tipos datos objeto OLE y autonumérico.

8. Texto de validación : Es el texto que mostrará el programa si se

introducen datos no válidos o que incumplan la regla de validación. No es aplicable a los tipos datos objeto OLE y autonumérico.

9. Requerido : Hace que sea obligatorio introducir datos en este campo

cuando se establece Sí como valor de esta propiedad. No es aplicable a los datos autonuméricos. El valor por defecto es No.

10. Permitir longitud cero : Si se establece Sí como valor de la

propiedad Requerido y también Sí en Permitir longitud cero, el programa aceptaría que nos limitásemos a pulsar la barra

Base de datos – Access - 7/24

Departamento de Tecnología IES Fco. Giner de los Ríos

espaciadora para que nos dejase pasar a otro campo. Si establecemos Sí en Requerido y No en Permitir longitud cero no bastaría con pulsar la barra espaciadora, tendríamos que introducir algún dato. Sólo es aplicable a datos tipo texto, memo o hipervínculo. El valor por defecto es Sí.

11. Indexado : Permite ordenar con índices el contenido del campo

acelerando así las búsquedas de registros. No es aplicable a los tipos de daros objeto OLE. El valor por defecto es No.

12. Compresión Unicode : Si se establece el valor Sí para esta

propiedad los datos ocupan menos espacio al guardarse ya que se comprimen. El valor No de esta propiedad se utiliza cuando se van a introducir caracteres que no sean latinos (chino, japonés, etc.) ya que Access no puede comprimir estos caracteres. Sólo es aplicable a datos tipo texto, memo o hipervínculo. El valor por defecto es Sí.

• Clave principal La clave principal identifica de forma exclusiva cada registro de una

tabla y ello le permite al programa encontrar más rápidamente la información contenida en ella. Si establecemos un campo como clave principal no será posible introducir en él valores duplicados o nulos.

Para establecer la clave principal en un campo, situar el cursor en ese campo y hacer clic en el botón clave principal de la barra de herramientas.

Si no se define ninguna clave principal, al guardar la tabla, el programa

preguntará si deseamos crear una. Si contestamos sí, creará automáticamente un campo autonumérico llamado Id y lo establecerá como clave principal.

• Guardar una tabla. Una vez terminado el diseño de tabla hay que guardarla. Se selecciona

del menú Archivo Guardar o haciendo clic en el botón Guardar de la barra de Herramientas.

Si salimos sin guardar nos saldrá el siguiente mensaje

Base de datos – Access - 8/24

Departamento de Tecnología IES Fco. Giner de los Ríos

En la ventana que aparece se escribe el nombre de la tabla y se hace

clic en aceptar.

• Introducir datos en una tabla Para introducir datos en una tabla una vez creada, hacer doble clic

sobre el nombre de la tabla creada.

Al finalizar la introducción de datos en un campo, podemos pasar al siguiente mediante la tecla Enter o Tabulador . Si nos encontramos en el último campo del registro, pasaremos al registro siguiente. También podemos pasar a un nuevo registro utilizando la opción Nuevo registro del menú

Insertar o el botón Añadir registro de la barra de herramientas. En los campos Sí/No estableceremos el valor Sí haciendo clic en la

casilla de verificación o pulsando la barra espaciadora . El valor No se establece dejando la casilla de verificación en blanco.

• Vista preliminar de una tabla Antes de imprimir una tabla es conveniente ver como quedará al ser

impresa. Para ello elegir la opción Vista preliminar del menú Archivo o haciendo clic en el botón vista preliminar .

• Cerrar una tabla Para cerrar una tabla podemos elegir la opción Cerrar del menú

Archivo o hacer clic en el botón Cerrar de la ventana de la tabla.

Cuando introducimos datos en la tabla no será necesario guardar antes de cerrar; los datos se guardarán automáticamente. Por el contrario, siempre que realicemos un cambio en la estructura de la tabla, tendremos que guardar si queremos que el cambio se conserve. Si cerramos sin haber guardado, el programa nos preguntará si queremos guardar los cambios de diseño de la tabla.

Base de datos – Access - 9/24

Departamento de Tecnología IES Fco. Giner de los Ríos

2.- MANEJO DE TABLAS Y OPERACIONES CON REGISTRO

• Modificar la estructura de una tabla Para modificar la estructura de una tabla hay que abrirla en Vista diseño.

Eliminar campos .- Seleccionar la fila correspondiente al campo que se quiere eliminar haciendo clic en el margen izquierdo.

Una vez seleccionado el campo, elegimos en el menú Edición la opción Eliminar o seleccionamos Eliminar filas en el menú que se nos muestra después de hacer clic con el botón derecho sobre el campo seleccionado. El programa avisará que los campos quedarán permanentemente borrados.

. La eliminación del campo y todo su contenido no podrá deshacerse si se acepta la acción.

Insertar campos .- Seleccionamos la fila correspondiente y después elegimos Filas en el menú Insertar o seleccionamos Insertar filas en el menú que se nos muestra después de hacer clic con el botón derecho sobre el campo seleccionado. Mover campos .- Seleccionamos el campo haciendo clic sobre el mismo y sin dejar de pulsar se arrastra hasta el lugar deseado. Copiar campos .- Seleccionamos el campo y elegimos la opción Copiar del menú Edición o seleccionamos Copiar después de hacer clic con el botón derecho sobre el campo seleccionado

Después se selecciona un campo en blanco donde se desea pegar y con la opción Pegar del menú Edición o después de hacer clic con el botón derecho del ratón seleccionamos la opción Pegar .

• Modificar el tamaño de las filas y columnas.

Cambiar la altura de las filas .- Se sitúa el puntero en el borde que separa una fila de otra dentro del margen izquierdo. Cuando el puntero cambie de forma, arrastramos hacia arriba o hacia abajo.

También se puede cambiar en la opción Alto de fila del menú Formato .

Base de datos – Access - 10/24

Departamento de Tecnología IES Fco. Giner de los Ríos

Cambiar la anchura de las columnas .- Situar el puntero en el borde que separa una columna de otra. Cuando el puntero cambie de forma, arrastramos hacia la derecha o la izquierda.

También se puede cambiar en la opción Ancho de columna del menú Formato .

• Fijar y liberar campos.

En ocasiones el gran número de campos de una tabla hará que estos no quepan en pantalla. En este caso, es recomendable fijar uno o varios campos para no perder la referencia al utilizar la barra de desplazamiento en la tabla al introducir los datos.

Para fijar columnas, seleccionamos las columnas haciendo clic en su

nombre y elegimos Inmovilizar columnas en el menú Formato , o en el menú desplegable haciendo clic con el botón derecho sobre la columna a fijar.

Si se inmoviliza alguna columna que no sea la primera, ésta cambiará de posición y pasará a ser la primera.

Para liberar campos, elegimos Liberar todas las columnas en el

menú Formato .

• Aplicar formatos a una tabla.

En una tabla se pueden aplicar formatos para variar su aspecto. Para ello se utilizan los botones de la barra de herramientas formato .

La única limitación que tiene es que el formato que se aplique afectará

a toda la tabla, no se puede dar un formato distinto a cada parte de la tabla.

• Operaciones con registros

Para realizar operaciones con registros debemos tener abierta la tabla en vista hoja de datos.

Eliminar registros .- Seleccionamos el registro que queremos eliminar haciendo clic en el margen izquierdo. Ahora, elegimos Eliminar del menú Edición o también se puede eliminar el registro pulsando la tecla suprimir.

Base de datos – Access - 11/24

Departamento de Tecnología IES Fco. Giner de los Ríos

El programa avisará que los cambios realizados (eliminación del registro) no podrán deshacerse si se acepta la acción.

Copiar registros .- Seleccionamos el registro a copiar y elegimos Copiar

del menú Edición o hacemos clic sobre el botón Copiar de la barra de herramientas.

Después seleccionamos la última fila y elegimos la opción Pegar del

menú Edición o el botón Pegar de la barra de herramientas.

Ordenar los registros .- Seleccionamos el campo por el que se quiere ordenar haciendo clic en el nombre.

En el menú Registros elegimos el submenú Ordenar y dentro de él elegimos Orden Ascendente (de la A a la Z) u Orden Descendente (de la Z a la A). También se puede hacer clic en el botón Orden

ascendente o en botón Orden descendente de la barra de herramientas.

• Buscar y reemplazar. Las acciones de buscar y reemplazar funcionan de un modo similar a otras aplicaciones de Microsoft (tales como Word y Excel). Están ubicadas en el menú Edición .

Base de datos – Access - 12/24

Departamento de Tecnología IES Fco. Giner de los Ríos

• Filtrar registros

Los filtros sirven para visualizar exclusivamente los registros de la tabla que cumplan unos criterios determinados.

Podemos optar por diferentes formas de filtrar: 1.- Filtro por selección. - Seleccionamos el dato que se va a utilizar

como criterio. Por ejemplo, el precio 1.000 € si quiere visualizar solo los productos con ese precio. A continuación, elegimos Filtro por selección en el submenú Filtro de! menú Registros o hacemos clic en el botón Filtro por

selección .

Diferentes filtros

Para desactivar el filtro, elegimos Quitar filtro u orden del menú

Registros o hacemos clic en el botón Quitar filtro . 2.- Filtro excluyendo la selección.- Funciona igual que el filtro por

selección, con la diferencia de tener que elegir Filtro excluyendo la selección en el submenú Filtro del menú Registros , además de mostrar todos los registros salvo los que coinciden con el criterio seleccionado.

3.- Filtro por formulario.- Elegimos Filtro por formulario en el

submenú Filtro del menú Registros o hacemos clic en el botón Filtro por formulario . En el campo en el que situemos el cursor aparecerá un cuadro de lista del que podemos elegir el valor deseado. Una vez elegidos los valores, hacemos clic en el botón Aplicar filtro o elegimos Aplicar filtro u ordenar en el menú Registros .

Para desactivar el filtro, elegimos Quitar filtro u orden del menú

Registros o hacemos clic en el botón Quitar filtro .

Base de datos – Access - 13/24

Departamento de Tecnología IES Fco. Giner de los Ríos

4.- Filtro u orden avanzado Este tipo de filtro ofrece muchas más posibilidades a la hora de

establecer las condiciones del filtro y el orden de presentación de los datos. Para empezar elegimos Filtro u orden avanzado en el submenú Filtro

del menú Registros . En la ventana que aparece hay un cuadro con todos los campos de la tabla. Elegimos aquellos campos en los que se va a establecer criterios de filtrado haciendo doble clic en ellos. Al hacerlo, dichos campos aparecerán en la fila Campo.

En la fila Criterios establecemos el criterio deseado para cada campo. En la fila Orden podemos establecer el criterio de ordenación que deseemos: Ascendente (de la A a la Z), Descendente (de la Z a la A) o Sin ordenar .

Por último, hacemos clic en el botón Aplicar filtro o elegimos Aplicar filtro u ordenar en el menú Filtro .

Para desactivar el filtro, elegimos Quitar filtro u orden del menú

Registros o hacemos clic en el botón Quitar filtro .

El botón es como un interruptor que activa y desactiva el filtro. La siguiente tabla puede resultar muy útil a la hora de establecer

criterios en el filtrado.

Expresión

Significado

Ejemplo

Significado del ejemplo

> Mayor que >234 >"Díaz"

Números mayores de 234 Desde Díaz (no inclusive) hasta el final del alfabeto

< Menor que <1200,45 <”Diaz”

Números menores de 1200,45 Desde Díaz (no inclusive) hasta el inicio del alfabeto

Base de datos – Access - 14/24

Departamento de Tecnología IES Fco. Giner de los Ríos

>= Mayor o igual que >=234 >="Díaz"

Mayor o igual que 234 Desde Díaz hasta el final del alfabeto

<= Menor o igual que <=234 <="Díaz"

Menor o igual que 234 Desde Díaz hasta el inicio del alfabeto

Entre Y Entre una fecha o número Y otra fecha o número

Entre #02/02/99# Y #01/12/99# Entre 34 Y 200

Fechas del 2-Feb-99 al l-Dic-99 (inclusive) Números del 34 al 200 (inclusive)

<> Distinto de <>”Díaz” Todos menos Díaz

Y Han de cumplirse ambas condiciones

>34 Y <200 Números del 34 al 200 (no inclusive)

O Basta con cumplir una condición

“Madrid” O “Barcelona”

Tanto los de Madrid como los de Barcelona

* Sustituye a una cadena de caracteres

Como “A*” Como”*A”

Empieza por A Termina por A

? Sustituye a un carácter

Como “?ato” Mostraría Gato, Pato, etc.

Es Nulo El campo está vacío

Es Negado Nulo El campo no está vacío

“” El campo contiene una cadena de longitud cero

Sí En los campos de tipo Si/No muestra los que tengan Sí

No En los campos de tipo Si/No muestra los que tengan No

En principio, las comillas, el símbolo # y la expresión “Como” los

colocará automáticamente el programa. Si no lo hace o los pone en una posición incorrecta habría que colocarlos correctamente.

A la hora de utilizar los criterios de selección, en cada uno de los

campos, hay que tener en cuenta lo siguiente: Criterios lógicos Si varios criterios están en la fila Criterios equivale a la expresión

lógica Y . Por ejemplo:

Campo Precio Disponible Orden:

Criterios: 1000 Sí o:

En este ejemplo los productos a mostrar son los que valgan 1000€ y

además estén disponibles. Si un criterio está en la fila Criterios y otros en las filas O equivale a la

expresión lógica O . Por ejemplo:

Base de datos – Access - 15/24

Departamento de Tecnología IES Fco. Giner de los Ríos

Campo Precio Disponible Orden:

Criterios: Sí o: 1000

2000 En este ejemplo se mostrarán todos los productos que valgan 1000€ o

2000 €, así como los que estén disponibles (con independencia del precio)

• Copiar una tabla

Para copiar una tabla procederemos de la siguiente forma: 1.- En la ventana Base de datos , seleccionamos la tabla que se desea

copiar. 2.- Elegimos Copiar en el menú Edición o hacemos clic en el botón

Copiar de la barra de herramientas.

3.- Elegimos Pegar del menú Edición o el botón Pegar de la barra de herramientas.

4. Aparecerá la siguiente ventana donde deberemos escribir un nombre para la nueva tabla y la opción deseada para la copia.

• Eliminar una tabla Para eliminar una tabla se procede de la siguiente forma: 1.- Cerramos, si no lo está, la tabla. 2.- En la ventana Base de daros , seleccionamos la tabla que se desea

eliminar. 3.- Pulsamos la tecla Suprimir o elegimos Eliminar en el menú

Edición . 4.- Confirmamos, en la ventana que aparece, que deseamos eliminar la

rabia.

Base de datos – Access - 16/24

Departamento de Tecnología IES Fco. Giner de los Ríos

IMPORTANTE.- Si tras haber eliminado la tabla deseamos recuperarla

elegimos Deshacer en el menú Edición o haciendo clic en el botón

Deshacer .

• Modificar el nombre de una tabla Para cambiar el nombre a una tabla se procede de la siguiente forma: 1.- Cerramos, si no lo está, la tabla. 2.- En la ventana Base de datos , seleccionamos la tabla que se desea

eliminar. 3.- Elegimos la opción Cambiar nombre del menú Edición . También

se puede utilizar el menú contextual que aparece al hacer clic sobre la tabIa con el botón derecho del ratón y elegir Cambiar nombre.

4.- Escribimos el nuevo nombre y pulsamos la tecla Enter.

Base de datos – Access - 17/24

Departamento de Tecnología IES Fco. Giner de los Ríos

3.- RELACIONES ENTRE TABLAS

• Tipos de relación. Para relacionar tablas, éstas tiene que tener un campo en común y, en por lo

menos una de las tablas, este campo tiene que ser clave principal. La tabla cuyo campo común es clave principal se denomina: tabla principal.

Al crear una relación entre tablas, no es necesario que los campos comunes

tengan el mismo nombre. Sin embargo, los campos comunes tienen que tener el mismo tipo de datos a menos que el campo de la tabla principal sea un campo Autonumérico.

Existen tres tipos de relación entre tablas:

1.- De uno a uno .- Un registro de una de las tablas sólo está relacionado con otro registro de la otra tabla. El campo común es clave principal en las dos tablas. Ejemplo:

Tabla Datos Personales Tabla Datos Laborales

Código_Trabajador Código_Trabajador Nombre_Trabajador Puesto Primer_Apellido Departamento Segundo_Apellido Categoría Teléfono Fecha_Ingreso Dirección Sueldo

Estas dos tablas tienen en común el campo Código_Trabajador, que es clave principal en los dos. A cada registro de la tabla Datos Personales SÓLO puede corresponderle uno de Datos Laborales y viceversa. 2.- De uno a varios .- A cada registro de la tabla principal pueden corresponderle varios de la secundaria, pero no al contrario. El campo común es clave principal sólo en la tabla principal. Ejemplo:

Tabla Tutores Tabla Alumnos

Código_Tutor Código_Tutor

Nombre_Tutor Nombre_Alumno

Primer_Apellido_Tutor Primer_Apellido_Alumno

Segundo_Apellido_Tutor Segundo_Apellido_Alumno

Teléfono Teléfono

Dirección Dirección

Localidad Localidad

Código Postal Código Postal

Curso

Base de datos – Access - 18/24

Departamento de Tecnología IES Fco. Giner de los Ríos

El campo común es Código_Tutor que sólo es clave principal en la tabla Tutores. Por ello, la tabla Tutores es la tabla principal y a cada tutor le pueden corresponder varios alumnos, pero a cada alumno sólo se corresponde un tutor. 3.- De varios a varios .- A cada registro de una tabla le pueden corresponder varios de la otra y viceversa. Es necesaria una tercera tabla, que haga de puente. Los campos comunes son clave principal en las dos tablas principales. Ejemplo: Tabla Productos Tabla Pedidos Tabla Clientes

Código_Producto Código_Pedido Código_Cliente

Producto Código_Producto Nombre

Precio Código_Cliente Dirección

Disponible Fecha_Pedido Localidad

Foto Fecha_Entrega Código_Postal

Observaciones Unidades Teléfono

En este caso, los campos comunes son Código_Producto, que es clave principal en la tabla Productos, y Código_Cliente, que es clave principal en la tabla Clientes. Por ello, las tablas principales son Productos y Clientes, pudiendo cada cliente comprar varios productos y cada producto ser comprado por varios clientes. La tabla secundaria que actúa como puente es Pedidos, estando presentes en ella los dos campos comunes.

En realidad, al establecer una relación de varios a varios hemos establecido dos relaciones de uno a varios. Una relación entre Productos y Pedidos y otra entre Clientes y Pedidos.

• Relacionar tablas de forma estable Para relacionar tablas, desde la ventana Base de datos y con las tablas cerradas, se procede de la forma siguiente:

1.- Elegimos Relaciones en el menú Herramientas o hacemos clic en

el botón Relaciones .

2.- En la ventana Mostrar tabla que aparecerá, seleccionamos las tablas y hacemos clic en el botón Agregar . En caso de no aparecer la ventana Mostrar tabla, elegimos Mostrar tabla en el menú

Relaciones o hacemos clic en el botón Mostrar tabla . 3. Arrastramos el campo común sobre su homólogo de la otra tabla.

Por ejemplo, Código_Cliente de la tabla Clientes sobre Código_Cliente de la tabla Pedidos,

Base de datos – Access - 19/24

Departamento de Tecnología IES Fco. Giner de los Ríos

4. En la ventana Modificar relaciones que aparecerá, elegimos las

opciones deseadas, pero teniendo en cuenta los que significa cada una:

o Exigir integridad referencial . Implica que NO se puede hacer ninguna de estas cosas:

− Introducir un valor en el campo común de la tabla

relacionada que no exista en el campo común de la tabla principal. Por ejemplo, no se puede introducir un código, de cliente en la tabla Pedidos que no exista en la tabla Clientes.

Base de datos – Access - 20/24

Departamento de Tecnología IES Fco. Giner de los Ríos

− Eliminar un registro de una tabla principal si existen registros coincidentes en una tabla relacionada. Por ejemplo, no puede eliminar un cliente de la tabla Clientes si existen pedidos asignados a él en la tabla Pedidos.

− Cambiar un valor de clave principal en la tabla principal si

ese registro tiene registros relacionados. Por ejemplo, no se puede cambiar el código de un cliente en la tabla Clientes si existen pedidos asignados a ese cliente en la tabla Pedidos.

o Actualizar en cascada los campos relacionados. Si hemos

establecido integridad referencial y además activamos esta opción, podremos cambiar el valor de la clave principal de la tabla principal. Pero en este caso, Access actualizará automáticamente la clave principal con el nuevo valor en todos los registros relacionados. Por ejemplo, si cambia un código de cliente en la tabla Clientes el campo Código_Cliente de la tabla Pedidos se actualizará automáticamente en cada uno de los pedidos de ese cliente, de modo que la relación no se rompa.

o Eliminar en cascada los registros relacionados . Si hemos

establecido integridad referencial y además activamos esta opción, podremos eliminar registros de la tabla principal aunque tengan registros relacionados en la otra tabla. Pero en este caso, los registros relacionados de la otra tabla serán eliminados automáticamente por el programa. Por ejemplo, si eliminamos un cliente de la tabla Clientes que tiene pedidos en la tabla Pedidos, esos pedidos serán eliminados por el programa.

5. Hacemos clic en el botón Tipos de combinación , elegimos una de las tres opciones y aceptamos. Normalmente utilizaremos la primera opción que es la predeterminada. Estas opciones hacen referencia a cuales son los registros que tienen que aparecer cuando hagamos consultas con tablas relacionadas.

Base de datos – Access - 21/24

Departamento de Tecnología IES Fco. Giner de los Ríos

6. Hacemos clic en el botón Crear y la relación indicada por una línea de unión entre las dos tablas

En el ejemplo que utilizamos, el de la base de datos ALMACEN, tenemos que repetir los pasos 3, 4, 5 y 6. La primera vez, para relacionar Clientes con Pedidos por el campo Código_Cliente. La segunda vez, para relacionar Productos con Pedidos por el campo Código_Producto. 7. Elegimos Guardar dentro del menú Archivo o hacemos dic en el

botón Guardar .

Al guardar las relaciones el programa no nos pedirá ningún nombre para ellas, se limitará a guardarlas.

8. Por último, cerramos las relaciones eligiendo la opción Cerrar del

menú Archivo o haciendo dic en el botón Cerrar de la ventana

Relaciones .

• Hojas secundarías de datos Si queremos ver o modificar datos de tablas relacionadas, podemos utilizar las hojas secundarias que aparecen en las tablas principales. Por ejemplo, en nuestra base de datos ALMACÉN tenemos dos tablas principales: Clientes y Productos. Utilizando las hojas secundarias podemos ver los pedidos que ha hecho cada cliente o los pedidos que le corresponden a cada producto. Para ello, abriremos la tabla Clientes o Producto; haciendo clic en el indicador de expansión (+) de un registro aparecerá la hoja secundaria con los pedidos que ele corresponden a ese registro.

Base de datos – Access - 22/24

Departamento de Tecnología IES Fco. Giner de los Ríos

• Modificar una relación entre tablas Para modificar una relación creada con anterioridad se procederá de la siguiente forma:

1. Elegimos Relaciones en el menú Herramientas o hacemos clic en el botón Relaciones .

2.- Hacemos clic en la línea de unión para seleccionarla y pulsamos la

tecla Suprimir .

3. Confirmamos la eliminación de la relación haciendo clic en el botón-Sí de la ventana que aparecerá.

4. Ya podemos crear una nueva relación siguiendo los pasos

estudiados anteriormente.

También podemos modificar una relación haciendo doble clic sobre la línea de unión y luego clic en el botón Crear Nueva de la ventana Modificar relaciones.

Base de datos – Access - 23/24

Departamento de Tecnología IES Fco. Giner de los Ríos