Bases de datos relacionales y MS Access

Anuncio
COLEGIO SANTA ANA – ZARAGOZA
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN
BASES DE DATOS RELACIONALES – Microsoft Access
Primeros Conceptos
Bases de datos
Muchas empresas e instituciones manejan grandes volúmenes de información,
con la que, de forma resumida, hace las siguientes operaciones:
•
•
•
•
•
Altas: incorporar nuevos datos.
Modificaciones (edición) de los datos.
Búsquedas y consultas de determinada información.
Listados, resúmenes, algún tipo de cálculo… muchas veces impresos en
papel.
Bajas: eliminar o borrar determinados datos.
La información, por ser compleja, puede almacenarse físicamente siguiendo
diferentes estructuras. Una de ellas es la correspondiente a las bases de datos
relacionales.
Bases de datos relacionales
Access es un gestor de bases de datos relacionales bajo un entorno Windows.
Un gestor de bases de datos es una herramienta que permite organizar un alto
volumen de datos de diversa naturaleza, de modo que puedan realizarse las
operaciones típicas (altas, bajas, modificaciones, consultas y listados) de forma
rápida y segura.
Para Access, una base de datos es un único archivo (de extensión .mdb o .accdb)
y está formada, entre otros, por:
•
•
•
•
•
•
Una o más TABLAS de datos relacionadas entre sí.
Diversas CONSULTAS que muestran cierta información referida a una o más
tablas de la base de datos.
FORMULARIOS para visualizar, introducir o modificar los datos.
INFORMES para presentar e imprimir la información, muchas veces referida a
un grupo de datos.
Macros que realizan acciones repetitivas de forma automática.
Módulos, que contienen el código en Visual Basic para programar instrucciones
asociadas a diversos eventos.
Elaborado por Alfredo García
COLEGIO SANTA ANA – ZARAGOZA
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN
Tablas
•
•
•
Todos los datos que se manejan en Access se guardan en tablas. Una tabla de
Access contiene información de determinadas características de cada uno de
los elementos de un grupo homogéneo de objetos. Visualmente se muestra como
un rectángulo dividido en filas y columnas: cada fila corresponde a un elemento
u objeto, y se denomina registro (record); cada columna corresponde a una
característica y se denomina campo (field). Todos los registros tienen
exactamente los mismos campos (aunque puedan estar en blanco).
Se podrían introducir datos directamente en la tabla, al visualizar la Hoja de
Datos (doble clic sobre la tabla), pero es más habitual y recomendable utilizar
los formularios.
Además de ver el contenido de la tabla podemos ver su estructura desde la
vista de Diseño.
Relaciones
La estructura "rectangular" de las tablas obliga a que determinados datos de un
mismo objeto se repartan entre varias tablas.
Por ejemplo, la lista de películas que ha alquilado un socio y los datos del socio:
no tiene sentido que estén juntos. Si en una tabla aparecen los datos de los
socios de un vídeo club (nombre, dirección, etc), la lista de películas alquiladas
debe guardarse en otra tabla. De lo contrario, tendríamos que repetir muchas
veces la misma información (con cada película, el nombre, dirección y demás
datos del socio). No obstante, las dos tablas no son independientes, guardan
cierta relación. ¿Cómo se concretar esto? Lo más recomendable es:
•
•
•
En cada tabla, debe haber un campo clave, es decir, uno que permita
identificar cada registro (no puede haber dos registros con el mismo
contenido en el campo clave). El DNI de la persona podría ser la clave en
la tabla de socios.
En las tablas donde aparezcan referencias a elementos de otras tablas,
se guardará únicamente su clave en un cierto campo.
En la ventana de relaciones, se crean todas las relaciones lógicas entre
las distintas tablas. A ser posible, exigiendo integridad referencial con
actualización en cascada.
Acceso multiusuario y seguridad
•
•
En un entorno de red, varias personas pueden abrir y trabajar simultáneamente
en la misma base de datos.
Los datos de las tablas quedan guardados al instante, sin necesidad de ninguna
operación especial (simplemente, salir del registro que se estaba modificando
Elaborado por Alfredo García
COLEGIO SANTA ANA – ZARAGOZA
•
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN
sin pulsar Escape, que anularía las modificaciones). En cambio, los diseños (de
tablas, de formularios, etc.) sí hay que guardarlos de forma semejante a como
se hace con documento de Word.
Las bases de datos de las prácticas puede abrirlas cualquier usuario. Sin
embargo, es frecuente restringir el acceso obligando a los usuarios a
identificarse al abrir la base de datos. Entonces podrán consultar y/o modificar
determinados datos o no, según se hayan definido los permisos en el sistema de
control de la seguridad que el propio Access posee. Pero este punto, tan
importante en un control de datos "sensibles" se escapa a esta primera
aproximación a Access.
Algunas cuestiones prácticas
Diseño de tablas
•
•
•
•
•
Hay campos de distintos tipos (Texto, Número, Fecha/hora...).
Los campos autonuméricos no se pueden modificar: es Access el que asigna de
forma automática un número cada vez que se añade un nuevo registro. Son muy
utilizados para crear códigos (campos clave) sin que el usuario tenga que
escribirlos ni saberlos.
Listas: Se puede hacer que al colocarnos sobre un campo aparezca un
desplegable (cuadro combinado). Esto se puedo lograr directamente en el diseño
de la tabla. En la parte inferior de la pantalla, en la pestaña Búsqueda, aquí
aparecen las opciones del cuadro combinado.
Para indicar que un campo (o varios) es la clave principal, pulsa sobre el botón de
la llave amarilla.
Estamos en una base de datos relacional: va a ser frecuente que en una tabla
utilicemos un campo por el que identifiquemos los datos de un registro de otra
tabla (ejemplo: Socios del videoclub y alquileres de películas; en la tabla de
alquileres hay que indicar el socio). Entonces, los campos deben ser del mismo
tipo. Si la clave en la tabla principal (Socios) es un campo autonomérico,
entonces en la secundaria (Alquileres) debe ser numérico de tipo entero largo.
NOTA: Aunque Access permite utilizar tildes y espacios en el nombre de
campos, tablas, etc., por varios motivos se recomienda evitar ambos.
Las relaciones entre tablas
Elaborado por Alfredo García
COLEGIO SANTA ANA – ZARAGOZA
•
•
•
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN
Es recomendable indicar a Access cómo se relacionan las tablas entre sí. Por
ejemplo, la tabla de Socios y de Alquileres estarán relaciondas por el campo
‘socio’: En la tabla principal (Socios) arrastraremos su clave hacia la tabla
secundaria (Alquileres) sobre el campo que guarda ese dato (‘socio’). Siempre
que se pueda, marca ‘exigir integridad referencial’. De esta forma, Access no
permitirá que introduzcas un dato que no exista en la tabla principal. (Cuando se
exige integridad referencial aparece en la pantalla marcada con 1 e ∞.
Para eliminar una relación, pulsa sobre la línea que une los campos.
Puede ser que una relación no se visualice en la pantalla de Relaciones, pero sí
exista. Hay un botón en la barra de herramientas que permite mostrar todas las
relaciones existentes.
Los primeros formularios
1. Como se ha dicho, la forma habitual de consultar o modificar los datos es a
través de los respectivos formularios.
2. Un formulario muestra etiquetas, el contenido de campos o el resultado de
cálculos, utilizando diversas formas (cuadros de texto, listas desplegables,
cuadros combinados, casillas de verificación, etc.). En el diseño del formulario,
todos sus elementos se denominan "controles". Así por ejemplo, para mostrar el
nombre de un socio se utilizan dos controles: una etiqueta con el rótulo
"Nombre" y un cuadro de texto dentro del cual se leerá el campo [Nombre] del
registro de Socios en el que nos encontremos.
3. Al abrir un formulario (doble clic) veremos los datos del primer registro.
Podemos cambiar de registro usando los botones de navegación que suelen
mostrarse en la parte inferior de la pantalla. También podemos situarnos en un
campo y utilizar el botón Buscar (prismáticos) para visualizar el registro que
nos interese.
4. Los formularios más sencillos, los de las tablas principales (como Socios) se
pueden crear con facilidad con el asistente ‘Formulario’ después de elegir la
tabla. Se creará un formulario sin preguntarnos nada.
5. En otros casos conviene abrir el Asistente para formularios. Entonces iremos
eligiendo paso a paso aquello que queremos:
• Los campos que realmente queremos que se vean en pantalla (no tienen
porqué ser todos los campos de una tabla). Si las tablas están
relacionadas, tiene sentido también elegir campos de distintas tablas.
• Si queremos ver un solo registro (distribución "en columnas" o
“justificado”) o varios a la vez (“tabular”).
• El nombre del propio formulario.
6. En ocasiones podemos crear un formulario con la ayuda de un asistente pero
después introducir cambios o mejoras. Es el caso de tablas relacionadas con
otras principales: se guarda la clave de identificación pero se muestra
información más “agradable” a través de un cuadro combinado (ejemplo: en la
Elaborado por Alfredo García
COLEGIO SANTA ANA – ZARAGOZA
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN
tabla de Alquileres se guarda el número de socio pero se elige el socio en un
cuadro combinado donde se listan nombre y apellidos de los socios).
• Utilizamos primero el asistente para formularios.
• Dentro del diseño del formulario, comprobamos que están activados los
asistentes (botón varita mágica).
• Seleccionamos el control de tipo cuadro combinado, activamos la Lista de
campos y arrastramos el campo sobre el formulario.
• Al abrirse el asistente para campos combinados, elegimos “Deseo que el
cuadro combinado busque los valores en una tabla” y después elegimos la
tabla cuyos datos se van a listar
• Es importante asegurarnos de que el dato que se elija en el cuadro
combinado se guarda en la tabla. Para ello, en el asistente, debemos optar
por “Almacenar el valor en el campo:” y elegir el campo.
Informes
Principales características
•
•
•
•
Si los formularios son la manera habitual de ver los datos en la pantalla, los
informes están pensados, sobre todo, para ser impresos. Con todo, disponemos
de la vista preliminar para visualizarlos por pantalla.
Los informes tiene muchas características en común con los formularios, se
diseñan de forma muy parecida.
Sin embargo, la principal diferencia radica en que los informes permiten
mostrar fácilmente información AGRUPADA y ORDENADA, por ejemplo, para
elaborar resúmenes.
Usaremos las secciones del informe para colocar el encabezado y pie de página,
pero también para imprimir los datos comunes de un agrupamiento (en el
encabezado de grupo) o totalizar datos de un resumen (en el pie del grupo o del
informe).
Ordenar y agrupar
•
•
•
Aparece en la parte inferior de la pantalla. Podemos agrupar en uno o más
niveles y también ordenar por uno o más criterios de ordenación.
Al agrupar, normalmente se crean "encabezado de grupo" y/o "pie de grupo".
Por ejemplo, si agrupamos por código postal, en vez de mostrar una columna con
el C.P. repetido durante varios registros, podemos mostrar el C.P. a modo de
encabezamiento y así el informe resulta más claro.
Elaborado por Alfredo García
COLEGIO SANTA ANA – ZARAGOZA
•
•
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN
Agrupando registros, podemos colocar campos en el encabezado o en el pie del
grupo en vez de en el detalle. Así, sin datos en el detalle, en vez de listar todos
los registros se puede conseguir una información agrupada, un resumen.
No será entonces extraño emplear controles que contengan funciones que
cuentan registros, suman cantidades numéricas o calculan parámetros
estadísticos. Algunas de ellas pueden conseguirse con el asistente para
informes.
Elaborado por Alfredo García
COLEGIO SANTA ANA – ZARAGOZA
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN
Consultas
Principales características
•
•
•
•
•
•
Hay varios tipos de consultas. Con las consultas de SELECCION, podemos
combinar datos de distintas tablas y filtrar los registros según unas
condiciones. El resultado tiene la apariencia de una nueva tabla.
Las consultas de selección también pueden agrupar y totalizar (contar
registros, sumar campos numéricos...).
Otros tipos de consultas sirven para actualizar campos de una tabla de forma
masiva, crear tablas nuevas, añadir registros a tablas ya existentes a partir de
datos de otras tablas, eliminar registros que cumplan ciertas condiciones, etc.
Las posibilidades son enormes.
Se pueden crear consultas permanentes, desde la ventana principal de Access.
Estas consultas se guardan con un nombre y pueden usarse como si fueran
tablas, por ejemplo para formularios o informes basados en ellas.
Pero se pueden crear consultas en otros lugares, como en la propiedad "origen
del registro" de formularios e informes, o en la propiedad "origen de la fila" de
los cuadros combinados.
Propiamente las consultas consisten en instrucciones escritas con un lenguaje
que se denomina SQL (Structured Query Language). Sin embargo, no es
necesario conocerlo ahora, ya que Access nos muestra la cuadrícula de diseño,
en la que se trabaja de una forma más visual.
La cuadrícula de diseño
•
•
•
•
•
En la parte superior veremos las tablas. Si hay más de una, deben estar
relacionadas. La relación puede establecerse ahora si aún no está definida, pero
sólo quedarán relacionadas en la consulta. Para añadir más tablas, pulsa sobre el
botón "Mostrar tabla".
Arrastra sobre la cuadrícula o haz doble clic sobre el campo que quieras que
aparezca o al que vas a imponer alguna condición. Usa el asterisco (*) para
indicar que se muestren todos los campos de la tabla.
Si indicas Orden en más de un campo, el primer criterio que se aplica para
ordenar es el que esté más a la izquierda.
Las condiciones se escriben a partir de la fila de criterios. Si dos condiciones
están escritas en la misma fila, se entiende que han de cumplirse las dos (están
unidas por el nexo lógico Y -AND-). Si se escriben en filas distintas, se
entiende que ha de cumplirse una, otra o ambas (nexo O -OR-).
Las condiciones pueden ser de distintos tipos; destaquemos los siguientes:
1. Un valor o texto: significa que el campo debe ser igual a ese valor.
2. Comparación simple con los signos <, <=, >, >=, =, <> (distinto)
Elaborado por Alfredo García
COLEGIO SANTA ANA – ZARAGOZA
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN
3. De la forma "ENTRE ... Y ... " indicando en los "..." los dos valores
extremos.
4. En campos de texto, indicando el principio del texto. Por ejemplo: "COMO
B*" listaría todos los registros salvo los que empiezan por A.
5. Condiciones compuestas, formadas por expresiones simples unidas por
nexos lógicos (básicamente: Y, O). Por ejemplo: "< 3 O > 15"
6. Ver ejemplo de consulta de selección con condiciones.
Consultas con totales
•
•
•
•
Son consultas de selección en la que en vez de mostrar registros de las tablas
efectúan agrupamientos. Pulsa sobre el botón "Totales" de la barra de
herramientas del diseño de la consulta; aparecerá la fila "Total" en la
cuadrícula.
Debe haber al menos un campo cuya fila Total sea "Agrupar por". Por ejemplo,
podemos agrupar en una sola línea todos los registros de un mismo código
postal.
Normalmente, además de agrupar querremos realizar alguna operación con cada
grupo de registros, como contar el número de registros agrupados, sumar todos
sus importes, obtener la media aritmética de un cierto campo... Hay que tener
en cuenta que si un campo está en blanco ("nulo") no se contará ni intervendrá
en la estadística.
Si se quieren poner condiciones a los registros, en la fila Total elegiremos
"dónde" y después escribiremos la condición en las filas Criterios.
Elaborado por Alfredo García
COLEGIO SANTA ANA – ZARAGOZA
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN
Subformularios y subinformes
Principales características
•
•
•
•
Se utilizan para mostrar (y gestionar) datos relacionados de dos tablas, de
modo que por un registro de una tabla encontramos una cantidad variable de
registros de la otra.
Por ejemplo, en el caso del video club, podríamos querer ver las películas (DVDs)
alquilados por un cierto cliente; o los ejemplares (cartuchos) de que se dispone
de un determinado videojuego.
Se tiene entonces un formulario o informe principal (en el ejemplo, para los
clientes) y dentro de él se visualiza el subformulario o subinforme (de las
películas) que realmente se guarda igual que los restantes.
La característica más importante del control subformulario/subinforme son las
propiedades "vincular campos...". En el subformulario se mostrarán sólo los
registros cuyos campos ("secundarios") coincidan con el contenido de los campos
("principales") del formulario que lo contiene.
Aspectos prácticos
•
•
•
•
•
Es posible utilizar el asistente pero, antes de iniciarlo, las tablas que vamos a
utilizar deben estar relacionadas.
Elegiremos campos de varias tablas y en el paso siguiente, elegiremos la tabla
que vamos a considerar como principal, con la opción "Formulario con
subformulario"
Podemos utilizar el pie del subformulario para totalizar los registros del
subformulario, con funciones Cuenta( ), Suma( ), u otras estadísticas.
Puede haber varios subformularios dentro del principal. Por ejemplo, para
mostrar los datos de un cliente (directamente en el principal) y además las
películas (en un subformulario) y los videojuegos alquilados (en otro
subformulario).
Access permite tener un doble anidamiento, esto es, un subformulario que, a su
vez contenga otro subformulario.
Elaborado por Alfredo García
Descargar