base de datos ii

16
Tema 10 Bases de datos (II) 1. Bases de datos con varias tablas En esta Unidad vamos a desarrollar todos los conceptos que se han estudiado con la Unidad anterior. Además veremos una de las principales características de una bases de datos relacional: la forma como se relacionan unas tablas con otras. 1.1. Guardar como Al igual que vimos al estudiar Word y Excel, una base de datos en Access 2007 puede guardarse en versiones anteriores, concretamente en formato 2002-2003 y en formato 2000. Ambas tendrían extensión. Mdb. Si se guarda sin especificar lo hará en la versión 2007 y su extensión, como ya sabemos, será. Accdb. 1.2. Clave principal y clave externa Clave principal El campo que se decida como clave principal de una tabla no podrá contener datos susceptibles de repetirse. Por ejemplo, no podríamos poner como clave principal el campo Nombre de una tabla de clientes porque puede haber varios clientes con el mismo nombre, pero sí puede ponerse un código de cliente como clave principal, tanto si este código ese genera automáticamente (auto numérico) como si se introduce de forma manual. También valdría como clave principal el DNI de una persona, puesto que ninguna otra tendrá el mismo número. Clave externa En las otras tablas que se relacionen con la que tiene la clave principal, se debe incluir ese mismo campo, que en esas tablas se llamará clave externa, al margen de que cada tabla pueda tener su propia clave principal. 1.3. Relaciones De uno a varios De varios a varios De uno a uno Las relaciones entre tablas deben crearse, para evitar errores en la base de datos. Para las relaciones:

Upload: vane-gonzalez

Post on 23-Mar-2016

225 views

Category:

Documents


5 download

DESCRIPTION

Tema 10 de informática

TRANSCRIPT

Page 1: Base de datos II

Tema 10 Bases de datos (II)

1. Bases de datos con varias tablas

En esta Unidad vamos a desarrollar todos los conceptos que se han estudiado con la

Unidad anterior. Además veremos una de las principales características de una bases de

datos relacional: la forma como se relacionan unas tablas con otras.

1.1. Guardar como

Al igual que vimos al estudiar Word y Excel, una base de datos en Access 2007 puede

guardarse en versiones anteriores, concretamente en formato 2002-2003 y en formato

2000. Ambas tendrían extensión. Mdb.

Si se guarda sin especificar lo hará en la versión 2007 y su extensión, como ya

sabemos, será. Accdb.

1.2. Clave principal y clave externa

Clave principal

El campo que se decida como clave principal de una tabla no podrá contener datos

susceptibles de repetirse. Por ejemplo, no podríamos poner como clave principal el campo

Nombre de una tabla de clientes porque puede haber varios clientes con el mismo nombre,

pero sí puede ponerse un código de cliente como clave principal, tanto si este código ese

genera automáticamente (auto numérico) como si se introduce de forma manual. También

valdría como clave principal el DNI de una persona, puesto que ninguna otra tendrá el

mismo número.

Clave externa

En las otras tablas que se relacionen con la que tiene la clave principal, se debe incluir

ese mismo campo, que en esas tablas se llamará clave externa, al margen de que cada tabla

pueda tener su propia clave principal.

1.3. Relaciones

De uno a varios

De varios a varios

De uno a uno Las relaciones entre tablas deben crearse, para evitar errores en la base de datos. Para las relaciones:

Page 2: Base de datos II

Campos relacionados. Entre dos campos en dos tablas distintas. En una tabla el campo será clave principal y en la otra será clave externa. Campo del mismo tipo Excepción en lo que respecta a la igualdad de tipo de campo es la de un campo Autonumérico.

Modificar y borrar relaciones.

1.4. Introducción de datos

Pueden introducirse o una vez que se han hecho las relaciones, puede crearse un formulario e introducir los datos a través de él. Datos introducidos a partir de un formulario de clientes:

2. Botones de comando

Se insertan en los formularios y ejecutan la acción que se les asigne

Page 3: Base de datos II

También pueden crearse arrastrando una macro a un formulario, permite personalizar los botones insertados.

3. Panel de control

Formulario con forma de menú facilita la navegación por la base de datos. Herramientas de

base de datos Administrador del panel de control

Se ejecuta al inicio. Mostrará una lista de acciones, que abrirán formularios e informes que hayan sido creados con anterioridad. Cuando se crea, se muestran de manera automática dos nuevos objetos en el panel, una tabla y un formulario. Se puede rediseñar en Diseño.

Ejemplos y actividades

Ejemplo 1.

Creación de la base de datos y las tablas

Crea una base de datos que se llame Ventas.accdb

La base de datos constará de tres tablas.

Crea una tabla llamada clientes, que tendrá los siguientes campos y propiedades para cada

campo. Recuerda que la manera que mas posibilidades ofrece para configurar ena tabla es

la vista Diseño.

Aunque el DNI sin letra o el codigo postal podrían considerarse datos numericos, se

diseñan de tipo texto pues no haremos operaciones matematicas con ellos.

Page 4: Base de datos II

El resto de las propiedades no especificadas, dejalas como vienen por defecto.

Clave principal. Al comenzar a crear la tabla en vista diseño, ya se muestra un campo como

clave principal. Puede cambiarse Id por Código cliente, y continuar completando campos.

DNI. Dado que un DNI puede ser del tipo decenas de millón (nn.nnn.nn-L) o del tipo

millones (n.nnn.nnn-L) en donde L será una letra y n un numero. Sabemos que el primer

numero es opcional, ya que puede no existir si es del segundo tipo (millones). Repasa en la

unidad anterior los caracteres que se pueden usar para crear una máscara de entrada:

en una máscara el 0 representa un digito obligatorio y el 9 un código opcional. La letra del

DNI es obligatoria. En la mascara sabemos que <?> representa la entrada opcional de una

letra, mientras que la L representa la entrada obligatoria de una letra. Por tanto, la mascara

podría ser: 90.000.000-L, que valdría para ambas numeraciones de DNI si deseamos que

aparezcan divididas por puntos de miles y con guión antes de la letra. Si además deseamos

que esa letra aparezca en mayúsculas aunque la escribiésemos en minúsculas, la mascara

que dará así: 90.000.000-> L. Introdúcela de este modo.

Al escribir el nombre del C Postal, no lo escribas C. Postal, ya que los nombres de campo

no pueden contener puntos, paréntesis, signos de exclamación, espacios a la izquierda o

caracteres no imprimibles.

Crea otra tabla llamada Formas de pago

Y una tercera tabla llamada Facturas.

Page 5: Base de datos II

Ejemplo 2

Abre la tabla de datos Ventas.

Activa la pestaña Herramientas de base de datos. Haz clic en Relaciones, del grupo

mostrar u ocultar. En el panel de trabajo se verán las tablas que componen la base de

datos: Clientes, Facturas y Formas de pago.

Observa que hay una relación hecha entre las tablas Formas de pago y facturas. Esto se

debe a que al diseñar la tabla facturas, en el campo forma de pago hemos elegido el tipo

asistente para búsquedas y ha sido entonces cuando hemos creado esa relación.

Debemos completar la relación entre Formas de pago y Facturas, para que cumpla todas

las reglas aconsejables de una relación: exigir integridad referencial, actualizar en cascada los

campos relacionados y eliminar en cascada los registros relacionados. Haz doble clic en la

línea de la relación y marca las tres reglas, que están en la parte inferior del cuadro de

diálogo. Clic en aceptar. Veras que la línea tiene en sus extremos 1 e ∞.

Page 6: Base de datos II

A continuación relacionaremos las tablas Facturas y Clientes. Tienen un campo común:

código cliente. Podría llamarse de otra manera pero sabemos que es común y está diseñado

del mismo tipo en ambas tablas. En clientes es autonumerico entero largo y en facturas es

número entero largo. Haz clic sobre código cliente de la tabla Clientes que muestra las

relaciones hasta código cliente de la tabla facturas.

Al terminar de arrastrar la relación, se abre Modificar relaciones. Marca las tres reglas y haz

clic en crear. Con esto hemos finalizado de relacionar las tres tablas. Ahora podemos tener

la seguridad de que la base de datos funcionará correctamente y podemos comenzar a

introducir datos en las tablas.

Cierra la base de datos.

Actividad 1

Abre la base de datos: Ventas.

Crea un formulario con todos los campos de la tabla Facturas. Llámalo Facturas.

Introduce en la tabla clientes:

Page 7: Base de datos II

Introduce los registros en la tabla formas de pago.

Una vez introducidos los dartos en las tablas clientes y formas de pago, crea un formulario

para cada una de estas tablas, Formulario Clientes y Formulario formas de pago. Elige

el autoformato a tu gusto.

Verifica que los datos que introdujiste en las tablas están incluidos también en los

formularios respectivos.

En la parte inferior del formulario clientes se muestran los campos de la tabla facturas,

tabla relacionada con la de clientes. Lo mismo ocurre con el formulario formas de pago.

Hay dos grupos de botones de desplazamiento: los que muestra la siguiente imagen son

para la tabla facturas, los del formulario clientes están en la parte inferior de la ventana de

trabajo. Cuando se hayan dado de alta las facturas en la parte inferior del formulario se

verán las que se hayan emitido al cliente que se tenga a la vista en el formulario.

Page 8: Base de datos II

Hemos dado de alta una lista de clientes y las diferentes formas de pago se usan en la

empresa para sus ventas. Escribe uno a uno los siguientes registros en el formulario

facturas.

Hasta ahora la mayor parte del trabajo ha consistido en crear tablas, formularios, relaciones

e introducciones de datos. La base de datos no sirve únicamente como deposito de datos

sino que puede organizar la información y mostrarla al usuario en la forma que se le

solicite. En la realidad las empresas pueden tener muchos clientes. En nuestra tabla de

facturas tenemos las correspondientes a un mes en el caso de que se hagan de dos a cinco

facturas diarias.

Page 9: Base de datos II

Ejemplo 3

Abre la base de datos ventas.

Con el asistente para consultas crea una, que llamarás consulta 1.

La consulta se diseñará para obtener un listado de todas las ventas que se han realizado.

Deberá mostrar el contenido de los siguientes campos:

Nº Factura Nombre cliente Apellidos cliente Fecha venta Importe Forma de pago

En esta consulta están implicadas todas las tablas de la base de datos.

- Clientes: Nombre cliente, Apellidos cliente.

- Facturas: Nº Factura, Importe, Fecha.

- Formas de pago: Forma de pago.

Con el asistente para consultas sencillas, comienza a seleccionar de cada tabla los campos

antes mencionados y en ese mismo orden.

Page 10: Base de datos II

Solicita una consulta de detalle. Al finalizar observa el resultado de la consulta.

Ejemplo 4

Ahora queremos saber que ventas se han producido entre los días 12 y 17 de enero.

Para ahorrarnos trabajo podemos utilizar la consulta 1 y después cambiarle el nombre y

ponerle la condición de fechas. Guárdala con el nombre de consulta 2.

Insertar la condición de fechas: Inicio Ver Vista diseño. Columna fecha introduce:

entre 12/1/10 y 17/1/10. Access lo modificará y aparecerá entre almohadillas.

Ejecuta la consulta teniendo activa la pestaña diseño, haz clic en ejecutar

Ejemplos de otros criterios para escribir la fecha:

- Antes del 20 de enero de 2010 <20/1/10

- El 19 de diciembre de 2010 =19/12/10

Page 11: Base de datos II

- Después del 17 de enero de 2010 >17/1/10

Ejemplo 5

Haz una consulta llamada Consulta 3 (son los mismos campos que la consulta 2)

En criterios de fecha: Entre [Fecha inicio:] y [Fecha final:]

Recuerda que cuando queríamos que Access nos hiciera una pregunta la escribíamos entre

corchetes.

Ejecuta la consulta con el botón Ejecutar. La siguiente lista muestra fecha de inicio 20 de

enero y fecha final 21 de enero.

Actividad 2

Realiza una consulta llamada consulta clientes Málaga, que al ejecutarse muestre un

listado de las facturas realizadas a clientes de la provincia de Málaga y solo muestre: Nombre,

Localidad, Importe y Fecha. El campo provincia debe estar en la consulta pero no aparecer en el

listado.

Haz un informe con los datos de la consulta anterior. Llamala informe clientes malaga,

elige autoformato.

Page 12: Base de datos II

Realiza una consulta llamada consulta clientes por provincia, igual que la anterior pero

que el usuario escriba que provincia desea listar. La pregunta puede ser elija provincia.

Comprueba la apariencia de los formularios clientes, formas de pago y facturas para

comprobar si todos los datos caben en el espacio disponible. De no ser así modifica los

formularios en vista diseño en tamaño de los datos.

Abre en vista diseño el informe clientes Málaga. Cambia nombre por el de cliente.

Verifica los objetos que tiene hasta ahora tu base de datos ventas.

Ejemplo 6

Crearemos un botón en el formulario facturas. La función será mostrar la vista previa del informe

clientes de Málaga.

Abre la base de datos ventas y a continuación abre el formulario facturas en vista diseño.

Desplaza hacia abajo unas tres cuadrículas el Pie del formulario, arrastrándolo con el ratón.

De esta manera haremos espacio en el formulario para insertar un botón de comando.

Page 13: Base de datos II

Con la pestaña diseño, haz clic en botón

El puntero del ratón cambiará de forma. Llévalo hasta el espacio que has dejado y dibuja

un rectángulo.

Simultáneamente, aparecerá asistente para botones de comando. En categorías

seleccionamos operaciones con informes, y en acciones, vista previa del informe. Clic

en siguiente.

¿de que informa desea obtener una vista previa con este botón de comando? Dale a

informe clientes Málaga. Clic en siguiente.

Page 14: Base de datos II

¿desea incluir texto o una imagen en el botón? Deseamos incluir el siguiente texto: facturas

de Málaga. Clic en siguiente

Dar nombre al botón o dejar el predeterminado de Access. Clic en finalizar.

Guarda los cambios al formulario y muestralo en vista formulario. Si el texto del boton no

aparece, puede ser por el color de la fuente. Cierra la vista preliminar y vuelve a la vista

diseño, selecciona el boton y elige otro color de fuente.

Comprueba que ocurre al hacer clic en el botón que acabas de crear.

Ejemplo 7

Vamos a elaborar un panel de control sobre la base de datos ventas.

Por seguridad, antes de comenzar haremos una copia de seguridad de la base de datos.

Haz clic con el botón secundario del ratón sobre ventas.accdb. Del menú emergente

selecciona Copiar. Haz clic con el botón secundario en cualquier lugar vacio de la carpeta y

pegar. Se creará Ventas copia.accdb. se quedará guardada y trabajaremos. Con ventas.accdb

Abre la base de datos ventas.accdb

Selecciona la pestaña herramientas de base de datos, clic en administrador del panel de

control. Se abrirá un cuadro de dialogo de que no existe ningún panel de control y si se

desea crear uno. Clic en Sí.

Page 15: Base de datos II

Se abre el cuadro de dialogo del administrador del panel de control. Clic en modificar, para

cambiar el nombre.

Lo llamaremos menú de la base de datos ventas. Clic en nueva.

Primera línea del menú: clic sobre él para que se pueda ver el formulario clientes.

Segunda línea del menú: para poder agregar clientes en el formulario clientes. Modificar

clic en nueva. Modificar elementos.

Page 16: Base de datos II

Siguiendo el mismo procedimiento realizado crea una nueva para abrir el informe clientes

Málaga. Clic en aceptar.

Y otra línea más para cerrar la aplicación. Aceptar.

Cierra el cuadro de dialogo modificar pagina del panel de control. Cierra también el

cuadro de dialogo administrador del panel de control. Guarda los cambios.

Desde el panel de objetos haz clic en panel de control y visualiza el que acabas de crear.