Microsoft Access 2003

Anuncio
Microsoft Access 2003
www.professionalscat.net
[email protected]
@profesionalscat
www.professionalscat.net
[email protected]
@profesionalscat
ÍNDICE
1. Las bases de datos ________________________________________________________ 5 ¿Qué es una base de datos? _______________________________________________________ 5 Tipos de Bases de datos __________________________________________________________ 5 Bases de datos jerárquicas ______________________________________________________________ 5 Base de datos de red___________________________________________________________________ 5 Base de datos relacional ________________________________________________________________ 5 Bases de datos multidimensionales _______________________________________________________ 6 Bases de datos orientadas a objetos _______________________________________________________ 6 Base de datos deductivas _______________________________________________________________ 7 ¿Qué es Microsoft Access? _______________________________________________________ 7 Objetos de una base de datos _____________________________________________________ 8 Tablas______________________________________________________________________________ 8 Consultas ___________________________________________________________________________ 8 Formularios _________________________________________________________________________ 9 Informes ____________________________________________________________________________ 9 Páginas _____________________________________________________________________________ 9 Macros _____________________________________________________________________________ 9 Módulos ____________________________________________________________________________ 9 2. Primeros pasos con Access ________________________________________________ 10 Abrir la aplicación _____________________________________________________________ 10 3. Creación de una base de datos _____________________________________________ 11 4. Las tablas ______________________________________________________________ 13 Crear tablas __________________________________________________________________ 13 Definición de los campos ________________________________________________________ 16 Tipos de datos ______________________________________________________________________ 16 Introducir, eliminar y modificar registros en las tablas _______________________________ 17 Introducir registros ___________________________________________________________________ 18 Eliminar registros ____________________________________________________________________ 19 Modificación del diseño de una tabla ______________________________________________ 20 Manipulación de columnas desde la vista hoja de datos ______________________________ 20 Cambiar el ancho de las columnas _______________________________________________________ 21 Ocultar y mostrar columnas ____________________________________________________________ 21 Mover una columna __________________________________________________________________ 22 Inmovilizar columnas_________________________________________________________________ 22 5. Claves principales y relaciones _____________________________________________ 23 Definición de una clave principal _________________________________________________ 23 Relaciones ____________________________________________________________________ 23 Tipos de relaciones _____________________________________________________________ 26 Uno a uno __________________________________________________________________________ 26 Uno a varios ________________________________________________________________________ 26 Varios a varios ______________________________________________________________________ 26 6. Consultas de selección ____________________________________________________ 28 -2-
www.professionalscat.net
[email protected]
@profesionalscat
Creación de consultas __________________________________________________________ 28 Introducir criterios de selección __________________________________________________ 30 Operadores de comparación de una consulta _______________________________________ 32 Operadores Y (AND) y O (OR) __________________________________________________ 32 Las cláusulas ENTRE, EN y COMO ______________________________________________ 33 Entre______________________________________________________________________________ 33 En ________________________________________________________________________________ 33 Como _____________________________________________________________________________ 33 Consultas de selección calculadas _________________________________________________ 34 Generador de expresiones _______________________________________________________ 35 Ordenación de los datos ________________________________________________________ 36 Consultas de totales ____________________________________________________________ 37 Consultas de parámetros ________________________________________________________ 39 7. Consultas de acción ______________________________________________________ 41 Consulta de creación de tablas ___________________________________________________ 42 Consulta de actualización _______________________________________________________ 43 Consulta de datos anexados _____________________________________________________ 44 Consulta de eliminación ________________________________________________________ 45 8. Diseño de consultas avanzadas – SQL _______________________________________ 46 Una breve historia de SQL ______________________________________________________ 46 La sintaxis SELECT de SQL en Microsoft Access ___________________________________ 46 Nombre de la columna ________________________________________________________________ 47 Cláusula FROM _____________________________________________________________________ 47 Consultas de Acción SQL _______________________________________________________ 48 Sentencia DELETE __________________________________________________________________ 48 Sentencia INSERT ___________________________________________________________________ 49 Sentencia SELECT…INTO ____________________________________________________________ 49 Sentencia UPDATE __________________________________________________________________ 50 9. Los formularios _________________________________________________________ 51 Encabezados, secciones de detalle y pies ___________________________________________ 51 Los Autoformularios ___________________________________________________________ 51 Desplazamiento a través de un formulario y tratamiento de los datos ___________________ 52 Diseño de formularios __________________________________________________________ 54 El cuadro de herramientas ______________________________________________________ 55 La lista de campos _____________________________________________________________ 58 La hoja de propiedades _________________________________________________________ 58 Desplazamiento y cambio de tamaño de los controles ________________________________ 59 Simplificación de la introducción de datos con un formulario _________________________ 60 Cuadros combinados _________________________________________________________________ 60 Cuadros de lista _____________________________________________________________________ 64 -3-
www.professionalscat.net
[email protected]
@profesionalscat
Propiedad column de los cuadros de lista o cuadros combinados _______________________ 65 Crear una plantilla con Access ___________________________________________________ 66 Crear un autoformato en Access _________________________________________________ 66 10. Informes ______________________________________________________________ 69 Origen de los datos en un informe ________________________________________________ 69 Creación de informes utilizando el asistente ________________________________________ 70 Encabezados, secciones de detalle, pies y grupos ____________________________________ 75 Configuración de la impresión ___________________________________________________ 77 11. Macros _______________________________________________________________ 78 Creación de una macro _________________________________________________________ 78 Guardar una macro ____________________________________________________________ 79 Asignación de una macro _______________________________________________________ 80 Conversión de las macros a Visual Basic ___________________________________________ 81 12. Módulos ______________________________________________________________ 82 Objetos de módulo _____________________________________________________________ 82 Módulos de formulario e informe _________________________________________________ 82 La ventana del editor de Visual Basic _____________________________________________ 82 Variables y constantes __________________________________________________________ 83 Ámbito de una constante y de una variable ________________________________________________ 84 BiBLIOgrafÍa: ____________________________________________________________ 86 - Ayuda de Microsoft Access 2003 ______________________________________________________ 86 - Running Microsoft Access 2000 – Guía Completa. Autor: John Viescas. Editorial: McGraw Hill ____ 86 - Paso a Paso – Access 2003 – Editorial: McGraw Hill _______________________________________ 86 -4-
www.professionalscat.net
[email protected]
@profesionalscat
1. LAS BASES DE DATOS
¿Qué es una base de datos?
Una base de datos es el equivalente en informática a una lista de información organizada.
Normalmente, esta información posee un aspecto o finalidad común. Un ejemplo muy claro
podría ser la guía telefónica de nuestra ciudad, que probablemente se encuentre en una
estantería cerca de nosotros. Si queremos encontrar el teléfono de alguna persona podremos
hacerlo fácilmente ya que la información se encuentra organizada de forma comprensible.
Tipos de Bases de datos
Bases de datos jerárquicas
Éstas son bases de datos que, como su nombre indica, almacenan su información en una
estructura jerárquica. En este modelo los datos se organizan en una forma similar a un árbol
(visto al revés), en donde un nodo padre de información puede tener varios hijos. El nodo que
no tiene padres es llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas.
Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan
un gran volumen de información y datos muy compartidos permitiendo crear estructuras
estables y de gran rendimiento.
Una de las principales limitaciones de este modelo es su incapacidad de representar
eficientemente la redundancia de datos.
Base de datos de red
Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la
modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres
(posibilidad no permitida en el modelo jerárquico).
Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al
problema de redundancia de datos; pero, aun así, la dificultad que significa administrar la
información en una base de datos de red ha significado que sea un modelo utilizado en su
mayoría por programadores más que por usuarios finales.
Base de datos relacional
Éste es el modelo más utilizado en la actualidad para modelar problemas reales y administrar
datos dinámicamente. Tras ser postulados sus fundamentos en 1970 por Edgar Frank Codd, de
-5-
www.professionalscat.net
[email protected]
@profesionalscat
los laboratorios IBM en San José (California), no tardó en consolidarse como un nuevo
paradigma en los modelos de base de datos. Su idea fundamental es el uso de "relaciones".
Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados
"tuplas". Pese a que ésta es la teoría de las bases de datos relacionales creadas por Edgar Frank
Codd, la mayoría de las veces se conceptualiza de una manera más fácil de imaginar. Esto es
pensando en cada relación como si fuese una tabla que está compuesta por registros (las filas
de una tabla), que representarían las tuplas, y campos (las columnas de una tabla).
En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a
diferencia de otros modelos como el jerárquico y el de red). Esto tiene la considerable ventaja
de que es más fácil de entender y de utilizar para un usuario esporádico de la base de datos. La
información puede ser recuperada o almacenada mediante "consultas" que ofrecen una amplia
flexibilidad y poder para administrar la información.
El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL,
Structured Query Language o Lenguaje Estructurado de Consultas, un estándar implementado
por los principales motores o sistemas de gestión de bases de datos relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como
normalización de una base de datos.
Durante los años '80 (1980-1989) la aparición de dBASE produjo una revolución en los
lenguajes de programación y sistemas de administración de datos. Aunque nunca debe
olvidarse que dBase no utilizaba SQL como lenguaje base para su gestión.
Bases de datos multidimensionales
Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como creación de
Cubos OLAP. Básicamente no se diferencian demasiado de las bases de datos relacionales (una
tabla en una base de datos multidimensional podría serlo también en una base de datos
multidimensional), la diferencia está más bien a nivel conceptual; en las bases de datos
multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien
representan dimensiones de la tabla, o bien representan métricas que se desean estudiar.
Bases de datos orientadas a objetos
Este modelo, bastante reciente, y propio de los modelos informáticos orientados a objetos, trata
de almacenar en la base de datos los objetos completos (estado y comportamiento).
Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos
importantes del paradigma de objetos:
-6-
www.professionalscat.net
[email protected]
@profesionalscat
Encapsulación - Propiedad que permite ocultar la información al resto de los objetos, impidiendo
así accesos incorrectos o conflictos.
Herencia - Propiedad a través de la cual los objetos heredan comportamiento dentro de una
jerarquía de clases.
Polimorfismo - Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos
de objetos.
En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos
como parte de la definición de la base de datos. Una operación (llamada función) se especifica
en dos partes. La interfaz (o signatura) de una operación incluye el nombre de la operación y
los tipos de datos de sus argumentos (o parámetros). La implementación (o método) de la
operación se especifica separadamente y puede modificarse sin afectar la interfaz. Los
programas de aplicación de los usuarios pueden operar sobre los datos invocando a dichas
operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que se han
implementado. Esto podría denominarse independencia entre programas y operaciones.
Se está trabajando en SQL3, que es el estándar de SQL92 ampliado, que soportará los nuevos
conceptos orientados a objetos y mantendría compatibilidad con SQL92.
Bases de datos documentales
Permiten la indexación a texto completo, y en líneas generales realizar búsquedas más
potentes. Tesaurus es un sistema de índices optimizado para este tipo de bases de datos.
Base de datos deductivas
Un sistema de base de datos deductivas, es un sistema de base de datos pero con la diferencia
de que permite hacer deducciones a través de inferencias. Se basa principalmente en reglas y
hechos que son almacenados en la base de datos. También las bases de datos deductivas son
llamadas base de datos lógica, a raíz de que se basan en lógica matemática.
¿Qué es Microsoft Access?
Microsoft Access, es un sistema de gestión de bases de datos relacionales (SGBDR), dicho de
otra forma, es un aplicación para la creación y la gestión de bases de datos del tipo relacional,
explicadas con anterioridad. Esta aplicación viene integrada en el sistema Microsoft Office
-7-
www.professionalscat.net
[email protected]
@profesionalscat
Objetos de una base de datos
Una base de datos contiene diferentes objetos, en la figura siguiente, que muestra la ventana
principal de la base de datos de Access, podemos ver todos los que pueden intervenir en
nuestra aplicación.
Para cada objeto de Access tendremos dos o más vistas. Normalmente vista diseño y Vista hoja
de datos para las tablas y consultas. Vista diseño y vista formulario o vista diseño y vista
informe. Desde la vista diseño podremos editar la estructura del objeto y desde la otra
podremos ver y editar los datos de las tablas.
Tablas
De todos estos, solo uno de ellos se utiliza para almacenar la información: las tablas. Podríamos
decir que es el elemento más importante pues sin el no podríamos tener una base de datos. Los
objetos de la base de datos, se utilizan para gestionar, tratar, analizar, recuperar, visualizar o
publicar la información de las tablas.
Consultas
Es una de las formas por las que podremos localizar la información en una base de datos. Una
consulta puede considerarse una pregunta que nosotros le hacemos a Access para que nos
muestre una serie de datos de una tabla.
-8-
www.professionalscat.net
[email protected]
@profesionalscat
Formularios
Es un ventana en la que se pueden colocar controles para ofrecer a los usuarios información o
permitir la introducción de la información. Access ofrece un cuadro de herramientas que incluye
muchos de los controles estándar de Windows, como etiquetes, cuadros de texto, botones de
opción o casillas de verificación entre otros. Los formularios nos permitirán introducir, modificar
y eliminar registros de las tablas de forma cómoda.
Informes
Los informes nos permitirán visualizar la información de una tabla en un formato atractivo y
preparado para imprimir. Un informe puede incluir elementos de información seleccionados
procedentes de varias tablas y consultas. Valores calculados a partir de la información de la
base de datos y elementos de formato como encabezados, pies y títulos.
Páginas
También llamadas páginas de acceso a datos, las podremos utilizar para permitir que los
usuarios visualicen y gestionen la información de una base de datos a través de una intranet o
de Internet. Trabajar con una página de acceso a datos en la Web es muy parecido a trabajar
con una tabla o formulario directamente en Access.
Macros
Una macro se puede definir como un comando que responde a un evento generado por Access.
Es decir, en el momento que se pulse un botón, podemos hacer que Access ejecute una macro
que abra o cierre un formulario, por ejemplo. Trabajar con macros, puede permitir que ciertos
usuarios no experimentados, manipulen nuestra base de datos de forma cómoda y sencilla.
También garantizará que las tareas se lleven a cabo siempre del mismo modo.
Módulos
Son más potentes que las macros. Son programas realizados con Visual Basic para Aplicaciones
(VBA). VBA es un lenguaje de programación de alto nivel desarrollado por Microsoft cuya
finalidad es la de crear aplicaciones Windows. Todos los programas de Microsoft Office utilizan
un conjunto común de instrucciones VBA, además de su propio conjunto. Utilizaremos visual
Basic para llevar a cabo tareas que son demasiado complejas como para ser tratadas con
macros.
-9-
www.professionalscat.net
[email protected]
@profesionalscat
2. PRIMEROS PASOS CON ACCESS
Abrir la aplicación
Para poder crear o manipular una base de datos, tendremos que empezar por abrir la
aplicación. Normalmente Access, se encuentra en el menú Inicio – Todos los programas –
Microsoft Office – Microsoft Access 2003. Al hacerlo, aparecerá la ventana de la aplicación.
Como Microsoft Access forma parte del sistema de Microsoft Office, los objetos básicos el
interfaz, menús, barras de herramientas, cuadros de diálogo, etc., funcionan básicamente de la
misma forma que en los demás productos de Office o de otras aplicaciones de Microsoft
Windows.
- 10 -
www.professionalscat.net
[email protected]
@profesionalscat
3. CREACIÓN DE UNA BASE DE DATOS
La creación de la estructura de una base de datos es muy sencilla. Pero una base de datos en
blanco no es más útil que un documento en blanco de Microsoft Word. Cuando se crea o
desarrolla una base de datos con los datos de las tablas es cuando verdaderamente comienza a
cumplir su propósito.
Para crear una base de datos, podremos realizarlo de diferentes formas. Utilizando el botón
Nuevo
o bien desde el menú Archivo – Nuevo. Cualquiera de las dos opciones, nos mostrará
el panel Nuevo archivo.
Desde el que podremos crear nuestra base de datos
utilizando diferentes modelos.
Desde la opción base de datos en blanco… crearemos una
base de datos vacía, donde después podremos ir creando
los
diferentes
elementos
que
necesitemos,
tablas,
consultas, formularios, etc.
También podremos utilizar la opción En mi PC…, del
apartado Plantillas para poder crear nuestra base de datos,
bien sea con una plantilla determinada o con alguno de los
asistentes que nos ofrece Access.
Un asistente de creación de bases de datos nos permitirá ir
siguiendo una serie de pasos para poder escoger la
estructura de nuestras tablas y el diseño que tendrá
nuestra base de datos de forma muy cómoda y sin emplear
demasiado tiempo.
Al hacer clic en la opción En mi PC…, aparecerá el cuadro de diálogo de las plantillas de Access.
- 11 -
www.professionalscat.net
[email protected]
@profesionalscat
Desde la pestaña Bases de datos, podremos encontrar las plantillas comentadas con
anterioridad.
Cuando hacemos clic sobre el icono de la creación de base de datos, aparecerá el cuadro de
diálogo para que elijamos el lugar y el nombre con el que queremos guardar nuestro archivo de
base de datos.
- 12 -
www.professionalscat.net
[email protected]
@profesionalscat
4. LAS TABLAS
Crear tablas
Al igual que muchos de los objetos de las bases de datos, las tablas podremos crearlas
manualmente, desde la vista diseño o bien utilizando algunos de los asistentes que proporciona
Microsoft Access.
Para crear una tabla utilizando un asistente, primero nos ubicaremos en la zona de las tablas de
la ventana principal de la base de datos y a continuación pulsaremos el botón Nuevo, para
luego escoger la opción Asistente para tablas, del cuadro emergente
Figura 4.1. Cuadro de diálogo Nueva tabla
o bien haremos doble clic en la opción Crear una tabla utilizando el asistente de la propia
ventana.
Figura 4.2. Crear una tabla utilizando el asistente
De cualquier forma, aparecerá el asistente para la creación de nuestra tabla
- 13 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 4.3. Asistente para tablas
Desde este, el primer paso será escoger aquellos campos que necesitaremos para nuestra tabla
desde las diferentes opciones que tenemos, iremos siguiendo todos los pasos hasta conseguir
todo lo que necesitemos.
Los botones centrales del cuadro nos ayudarán a seleccionar aquellos campos que necesitemos.
Estos botones, los podremos encontrar en muchos de los asistentes de Access.
Figura 4.4. Botones opción asistente
De todas formas la mejor forma de crear una tabla será hacerlo de forma manual a través de la
vista diseño, empezando desde cero, ya que será cuando realmente la adaptaremos a nuestras
necesidades al cien por cien. Para hacerlo, nos dirigiremos al botón Nuevo y escogeremos
Vista diseño en el cuadro emergente.
- 14 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 4.5. Ventana Vista diseño tabla
En la parte superior de esta ventana, definiremos los campos y sus tipos de datos y en la parte
inferior, las propiedades de cada unos de los campos que coloquemos. Dependiendo del tipo de
datos escogido, las propiedades podrán cambiar.
Una vez creada nuestra tabla, podremos guardarla desde el botón guardar
de la barra de
herramientas o bien desde la opción Guardar, del menú Archivo. Nos pedirá un nombre y
haremos Aceptar.
- 15 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 4.6. Cuadro Guardar como de las tablas
Definición de los campos
Desde la vista diseño de una tabla, podemos definir los campos. Escribiremos en la columna
Nombre del campo el nombre que deseemos asignarle y a continuación en la columna Tipo
de datos, escogeremos el tipo que necesitemos dependiendo de los datos que posteriormente
tengamos pensado de introducir.
Figura 4.7. Tipos de datos
Tipos de datos
Los diferentes tipos de datos que podremos colocar son:

Texto: Datos alfanuméricos hasta 255 caracteres

Memo: Texto extenso, o combinación extensa de texto y números. Hasta un máximo de 65.535
caracteres.

Número: Datos numéricos utilizados en cálculos matemáticos. Podremos utilizar diversos tamaños,
1, 2, 4 u 8 bytes, dependiendo del tamaño escogido.

Fecha/Hora: Cualquier dato que se pueda identificar como una fecha o una hora.

Moneda: Valores de moneda y datos numéricos utilizados en cálculos matemáticos en los que estén
implicados datos que contengan entre uno y cuatro decimales. La precisión es de hasta 15 dígitos a
la izquierda del separador decimal y hasta 4 dígitos a la derecha del mismo.

Autonumérico: Número secuencial (incrementado de uno a uno) único, o número aleatorio que
Microsoft Access asigna cada vez que se agrega un nuevo registro a una tabla. Los campos
Autonumérico no se pueden actualizar.
- 16 -
www.professionalscat.net
[email protected]
@profesionalscat

Sí/No: Valores Sí y No, y campos que contengan uno de entre dos valores (Sí/No, Verdadero/Falso
o Activado/desactivado).

Objeto OLE: Objeto (como por ejemplo una hoja de cálculo de Microsoft Excel, un documento de
Microsoft Word, gráficos, sonidos u otros datos binarios, procedentes de otras aplicaciones
Windows) vinculado o incrustado en una tabla de Microsoft Access.

Hipervínculo: Texto o combinación de texto y números almacenada como texto y utilizada como
dirección de hipervínculo, para dar acceso a una página Web o archivo en la WWW o en la intranet,
en una red o bien en el propio ordenador.
Introducir, eliminar y modificar registros en las tablas
Una vez diseñada nuestra tabla, llega la hora de la introducción de registros en la misma o bien
su manipulación. Para hacerlo, tendremos que acceder a la tabla en la vista hoja de datos. Esto
podremos llevarlo a cabo, haciendo doble clic sobre la tabla guardada en la ventana principal de
la base de datos
Figura 4.8. Ventana principal Base de datos
O si nos encontramos en la vista diseño, pulsar el botón Vista Hoja de datos de la barra de
herramientas.
Figura 4.9. Botón vista hoja de datos
Aparecerá la ventana de introducción de registros
- 17 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 4.10. Ventana de la tabla en Vista hoja de datos
Introducir registros
En esta podremos ir introduciendo los registros uno debajo del otro. El campo Autonumérico se
generará automáticamente cuando empecemos a escribir en cualquiera de los otros campos de
la tabla. Al hacerlo, además aparecerá el símbolo de un lápiz al lado del selector de registro,
esto nos indicará que el registro todavía no ha sido guardado.
Figura 4.11. Registro no guardado
El asterisco nos indica que es la zona preparada para introducir un registro nuevo. Debajo de
todas las ventanas de Access que sirven para enseñar los datos y manipularlos, aparecen lo que
se llaman botones de desplazamiento. Estos nos servirán para movernos por todos los registros
de la tabla.
- 18 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 4.12. Botones de desplazamiento
Eliminar registros
Si queremos borrar uno de los registros de la tabla, nos colocaremos sobre cualquier zona del
registro que deseamos eliminar y podremos utilizar las siguientes opciones:
Desde la barra de herramientas, pulsaremos el botón eliminar registro
Figura 4.13. Eliminar registro
Podríamos hacerlo a través de la opción eliminar registro del menú Edición
También con el botón derecho clicando en la el selector de registro y escoger la opción eliminar
registro
Figura 4.14. Selector de registro
O Haciendo un clic en el selector de registro y pulsando la tecla Supr.
Con cualquiera de estas opciones aparecerá siempre un cuadro de diálogo que nos solicitará la
confirmación para la eliminación de dicho registro, advirtiéndonos que esta eliminación será
permanente y no podremos deshacer.
- 19 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 4.15. Confirmación de eliminación
Modificación del diseño de una tabla
Para modificar el diseño de una tabla podremos abrir nuestra tabla a través del botón diseño
de la ventana principal de la base de datos, previo selección de la tabla que deseemos
modificar.
Figura 4.16. Diseño de tabla
O bien utilizando el botón vista diseño si tenemos abierta la tabla en modo vista hoja de datos.
Figura 4.17. Botón Vista diseño
Manipulación de columnas desde la vista hoja de datos
Cuando trabajamos con los datos de nuestra tabla, podremos modificar el tamaño de las
columnas para ver más cantidad de datos, ocultarlas porque no las necesitamos visualizar
todas, cambiarlas de lugar o simplemente fijarlas porque necesitamos que siempre se encuentre
en la parte izquierda para servirnos como referencia al ojear la tabla.
- 20 -
www.professionalscat.net
[email protected]
@profesionalscat
Cambiar el ancho de las columnas
En ancho predeterminado de las columnas, a veces es demasiado grande para el contenido de
las mismas o demasiado pequeño para mostrar todo el contenido, por ese motivo podremos
cambiar el tamaño para ajustarlo a nuestras necesidades. Para hacerlo, la forma más cómoda
será utilizar la posibilidad que nos proporciona el Access desde la propia columna:
Figura 4.18. Ancho de columna
Clicar y arrastrar para conseguir el ancho necesario o bien hacer doble clic para ajustar
automáticamente a la anchura exacta.
También podremos cambiar el ancho desde el menú Formato – Ancho de columna, donde
aparecerá el siguiente cuadro, desde el que podremos modificar la anchura numéricamente.
Figura 4.19. Cuadro ancho de columna
Ocultar y mostrar columnas
Podremos ocultar una o varias columnas porque necesitamos solo visualizar unas cuantas para
nuestro trabajo, para hacerlo podremos igualmente ir al menú Formato – Ocultar columnas o
bien con el botón derecho encima del nombre de la columna y escogiendo la opción con el
mismo nombre.
Para mostrarlas podremos ir al Formato – Mostrar columnas y marcaremos aquellas que
necesitamos que vuelvan a aparecer.
- 21 -
www.professionalscat.net
[email protected]
@profesionalscat
Mover una columna
Para mover una columna de ubicación simplemente tendremos que arrastrarla, habiéndola
seleccionado con anterioridad. Lo podremos realizar con una o con varias columnas a la vez,
siempre y cuando estén seleccionadas.
Inmovilizar columnas
La inmovilización de columnas es necesaria cuando tenemos tantos campos que al desplazarnos
hacia la derecha perdemos la noción del registro donde nos encontramos ubicados. Cuando
inmovilizamos una o varias columnas, estas se mueven al primer lugar de la hoja de datos,
cuando quitamos esta movilización, lamentablemente no vuelven a su lugar originario.
Para inmovilizar/liberar columnas a través del menú formato – inmovilizar columnas o bien
con el botó derecho encima de la columna a inmovilizar. Para volver a liberarlas (todas a la vez,
no podremos liberar una sola columna), también lo haremos desde el menú Formato – Liberar
todas las columnas o bien con el botón derecho encima de cualquier columna.
- 22 -
www.professionalscat.net
[email protected]
@profesionalscat
5. CLAVES PRINCIPALES Y RELACIONES
Estos dos conceptos se explican conjuntamente dado que tienen una relación entre ellos, una
clave principal no serviría de mucho sin que estuviera relacionada con otro campo de otra tabla;
y una relación, a veces no ofrecería sus mayores prestaciones si al menos uno de los campos
relacionados no fuera una clave principal.
Definición de una clave principal
Cualquier tabla de una base de datos relacional tendría que tener una clave principal (aunque
no es obligatorio, si es muy recomendable). Un buen diseño de base de datos relacional incluye
que cada uno de los registros de cualquier tabla debe ser identificado de forma única. Es decir,
algún campo (o combinación de campos) de la tabla debe albergar un valor único para cada
registro de la tabla. Este identificador único es lo que se llama Clave Principal. Siempre que
sea posible se debería utilizar los datos más sencillos que proporcionen valores únicos para
crear una Clave principal, como por ejemplo en una base de datos de clientes, el campo que se
encargue de guardar el NIF/CIF o DNI del cliente sería una clave principal bastante lógica ya
que sería un campo que irremediablemente no tendría porqué repetirse en nuestra tabla, ya que
el cliente únicamente lo tendremos introducido una sola vez.
Para indicar a Access que campo tiene que ser nuestra Clave principal, primero tendremos que
abrir en vista diseño la tabla en cuestión y seleccionar el campo o campos que necesitamos que
sea la Clave Principal. A continuación solo tendremos que pulsar el botón de la clave principal
que se encuentra en la barra de herramientas.
Figura 5.1. Clave principal
Relaciones
Después de haber confeccionado las tablas y claves principales de cada una de ellas,
deberíamos indicarle a Access cuál es la relación existente entre ellas. De esta forma, Access
- 23 -
www.professionalscat.net
[email protected]
@profesionalscat
sabrá cómo enlazar todas sus tablas cuando las utilicemos más tarde en consultas, formularios,
páginas de acceso a datos o informes.
Para definir las relaciones, necesitamos regresar a la Ventana de base de datos cerrando
cualquier ventana Tabla que esté abierta y haciendo clic en la Ventana Base de datos para
activarla. A continuación, debemos elegir la orden Relaciones que se encuentra en la barra de
herramientas.
Figura 5.2. Botón relaciones
Si es la primera vez que accedemos a las relaciones, cuando se abra la ventana aparecerá el
cuadro de diálogo mostrar tabla para que podamos escoger las tablas o consultas que queremos
relacionar, a través del botón Agregar.
Figura 5.3. Cuadro de diálogo Mostrar tabla
Una vez seleccionadas las tablas y agregadas, al cerrar el cuadro veremos algo así:
- 24 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 5.4. Tabla de relaciones
Para relacionar dos campos, simplemente arrastraremos uno de ellos hacia el que queremos
crear la relación, cuando soltemos el ratón se nos mostrará el cuadro de modificar relaciones
Figura 5.5. Modificar relaciones
En este nos indicará el tipo de relación que se está creando ya que nosotros de manera directa
no podemos escoger el tipo de relación que necesitamos, sino que lo creará Access
automáticamente cuando creemos las relaciones y dependiendo de los campos que sean claves
principales creará uno de los tres tipos de relaciones que existen
- 25 -
www.professionalscat.net
[email protected]
@profesionalscat
Tipos de relaciones
Uno a uno
Cuando los dos campos que se relacionan son claves principales. Ocasionalmente podría ser que
tuviéramos que dividir una tabla, debido a que parte de la información, se utiliza con poca
frecuencia o porque algunos datos son muy delicados y no deben estar disponibles para ciertas
personas. En estos casos se creará una clave principal en cada una de las tablas que serán las
que estarán relacionadas entre ellas.
Uno a varios
Es el tipo de relación más común. Es cuando para una registro de una tabla, existen varios
registros coincidentes para la segunda tabla. Este tipo de relación será cuando relacionemos un
campo que sea clave principal, con uno que no lo sea. Por ejemplo, un cliente puede tener
varios pedidos, pero un pedido solo lo puede realizar un solo cliente.
Varios a varios
Cuando varios registros de una tabla, tengan de alguna forma que estar relacionados con varios
registros de la otra tabla. Pero en estos casos, Access, no nos permitirá crear una relación de
varios a varios directamente entre las dos tablas, sino que tendremos que crear una tabla de
intersección o enlace para gestionar la relación. Por ejemplo en una base de datos de
facturación, una factura puede tener varias líneas de factura pero el artículo que nosotros
colocamos en una factura podría estar en otras facturas a su vez. En la imagen siguiente se
pueden comprobar que para un caso similar al expuesto en el ejemplo anterior necesitaríamos
una tercera tabla que realice las funciones de puente entre las dos. Fijémonos que la tabla
tb_facturas está unida a la tabla tb_artículos por medio de la tabla tb_liniasFactura
- 26 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 5.6 Relaciones varios a varios
Para que una relación después no nos acarree más de un problema, los campos a relacionar
entre las dos tablas, tendrán que ser del mismo tipo y con el mismo tamaño de campo, aunque
el nombre del campo no tiene porqué ser el mismo, es aconsejable que lo sea, para que cuando
estemos montando las relaciones no nos despistemos. Aunque esto no tendría que ocurrir si
hubiéramos realizado un diseño previo de nuestra base de datos.
- 27 -
www.professionalscat.net
[email protected]
@profesionalscat
6. CONSULTAS DE SELECCIÓN
Como ya se ha explicado con anterioridad, una consulta es el elemento de Access que nos
servirá para poder seleccionar aquellos datos de las tablas que nos interesen mostrar en
cualquier momento.
Creación de consultas
Para confeccionar una consulta tendremos que acceder previamente al apartado de las
consultas y a través de este, podremos generar la consulta de varias formas, utilizando el botón
nuevo de la barra de la ventana de la base de datos:
Figura 6.1. Crear consulta nueva
También podremos hacerlo utilizando el asistente de las consultas a través de la opción Crear
una consulta utilizando el asistente, o bien utilizando directamente la opción Crear una
consulta en vista diseño. Que aparecerá la siguiente ventana.
- 28 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 6.2. Ventana diseño de consulta
Lo primero que veremos en la ventana del diseño de la consulta es el cuadro Mostar tabla,
desde el que podremos escoger que tablas y/o consultas utilizaremos para las construcción de
nuestra consulta. En este cuadro podremos hacer doble clic sobre el objeto para colocarlo en la
ventana de la consulta o bien un clic en el objeto y a continuación pulsaremos el botón
Agregar.
Una vez tenemos los objetos colocados en la ventana, podremos escoger aquellos campos que
tienen que participar en nuestra consulta, haciendo doble clic sobre el campo que nos interese.
- 29 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 6.3. Diseño de nuestra consulta
Introducir criterios de selección
Introducir criterios en una consulta, nos servirá para que esta, muestre aquellos registros que
cumplan una serie de requisitos, como por ejemplo una listado de todos aquellos clientes de una
cierta población. Para buscar un valor sencillo, simplemente lo escribiremos en la fila Criterios
correspondiente al campo que deseamos comprobar.
Si el campo donde escribimos el criterio es un texto, este tendrá que estar entre comillas,
normalmente Access ya las coloca automáticamente. Para los valores numéricos no se
incorporará ningún carácter adicional. Para los tipos de datos fecha, los introduciremos entre el
símbolo de la parrilla (#), aunque normalmente también lo hace Access automáticamente. Los
valores lógicos (Sí/No, VERDADERO/FASO), tampoco tendrán ningún carácter adicional.
- 30 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 6.4. Introducción de criterios
Podremos visualizar los resultados pulsando el botón vista de la barra de herramientas:
Figura 6.5. Botón vista
La ventana vista hoja de datos, realmente es exactamente igual que la ventana hoja de datos
de una tabla, con la diferencia que no aparecen todos los campos de la tabla, sino solo aquellos
que nosotros hayamos escogido en la consulta, tendrá el siguiente aspecto.
- 31 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 6.6. Ventana vista hoja de datos
Operadores de comparación de una consulta

>
Mayor que

<
Menor que

>=
Mayor o igual que

<=
Menor o igual que

<>
Diferente de
Si lo que queremos es que sea una igualación, únicamente colocaremos el valor, sin necesidad
de colocar el símbolo igual previamente.
Operadores Y (AND) y O (OR)
Si quisiéramos mostrar clientes de varias poblaciones, tendríamos que utilizar le operador lógico
O, o bien colocar los diferentes criterios en las diferentes filas O preparadas para la ocasión:
Ejemplo:
“Barcelona” O “Badalona”
El operador O, mostraría todos aquellos registros que cumplieran una condición u otra.
Teniendo en cuenta que en una celda a la vez, solo puede existir un valor, cuando tenga que ser
igual a este, siempre utilizaremos el operador O.
Por otro lado, si quisiéramos que los dos valores se cumplieran a la vez, utilizaremos el
operador
Y.
Este,
normalmente
lo
utilizaremos
cuando
utilicemos los
operadores
de
comparación
- 32 -
www.professionalscat.net
[email protected]
@profesionalscat
Ejemplo:
En una tabla de alumnos de un colegio, si queremos mostrar todos aquellos alumnos que
tienen menos de 15 años, haríamos los siguiente en el apartado criterios del campo Edad:
>15
Si por el contrario quisíeramos aquellos alumnos que se encuentran en edades comprendidas
entre 10 y 15 años, sería el siguiente criterio:
>=10 Y <=15
Las cláusulas ENTRE, EN y COMO
Además de los operadores de comparación, Access nos ofrece la posibilidad de utilizar tres
cláusulas de predicado especiales que son útiles para especificar los datos deseados en las hoja
de respuestas.
Entre
Resulta de gran utilidad para especificar un rango de valores.
Ejemplos:
La cláusula
Entre 10 y 20
Sería lo mismo que
>=10 Y <=20.
En
Es muy útil cuando necesitamos especificar una lista de valores, en la que cualquiera de ellos
puede coincidir con el contenido del campo que está siendo buscado.
Ejemplos:
La cláusula
“Barcelona” O “Badalona” O “Mataró” O “Martorell” O
“Tárrega”
Sería lo mismo que
EN(“Barcelona”;”Badalona”;”Mataró”;”Martorell”;”Tárrega”)
Como
Para buscar modelos en campos de texto. Podemos incluir caracteres especiales y rangos de
valores en las cadenas de comparación. Utilizaremos los llamados caracteres comodín. El
carácter ? cuando queramos indicar un carácter cualquier en esa posición. Un * para indicar
cero o más caracteres en esa posición.
- 33 -
www.professionalscat.net
[email protected]
@profesionalscat
Ejemplo:
Imaginemos que sabemos una parte del apellido de un cliente y no conocemos el resto,
sabemos que se llama Gómez pero no en que posición se encuentra ese Gómez en el nombre,
haríamos lo siguiente:
Como “*Gómez*”
Consultas de selección calculadas
Utilizando las columnas libres en la vista diseño, podremos realizar cálculos con los campos de
las tablas. Para hacerlo tendremos que tener en cuenta que un campo siempre tiene que ir
encerrado entre corchetes [Nombre del campo] cuando actúa como campo en un cálculo.
Podremos utilizar los siguientes operadores matemáticos:

+
Sumar

-
Restar

*
Multiplicar

/
Dividir

&
Permitirá crear cadenas de texto.
Figura 6.7. Cálculos en una consulta
Si hacemos un clic en la fila campo de de la columna deseada y a continuación pulsamos la
combinación de teclas Mayús + F2, se abre la ventana Zoom, desde donde es más cómodo
introducir la expresión deseada.
- 34 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 6.8. Ventana Zoom
Generador de expresiones
Si no sabemos muy bien como podríamos colocar los campos, símbolos, etc. dentro de una
expresión, o resulta demasiado compleja para hacerla manualmente, podríamos utilizar el
Generador de Expresiones.
Figura 6.9. Generador de expresiones
Para acceder a esta ventana, haríamos un clic en el botón Generar situado en la barra de
herramientas de las consultas.
- 35 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 6.10. Botón generar
Desde el generador, utilizando las diferentes partes de la ventana, podremos realizar todo tipo
de expresiones. En la parte izquierda de la tabla, veremos una lista de todos los objetos de
Access, cuando cliquemos sobre uno de ellos, en la parte central se nos colocarán los elementos
que forman parte de este objeto y al hacer un clic sobre este elemento, en la parte derecha se
nos mostrarán las propiedades del mismo.
También desde esta ventana podremos acceder a todas las funciones que tiene incorporadas
Access.
Figura 6.11. Generador de expresiones – Funciones
Ordenación de los datos
Normalmente, Access presenta las filas de la hoja de respuestas en el orden en que se
recuperaron de la base de datos. Sin embargo, podemos ordenar la información en una
consulta, utilizando la fila Orden del campo por el que deseamos ordenar. Los métodos para
ordenar serán Ascendente o Descendente.
- 36 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 6.12. Ordenar campos de una consulta
Consultas de totales
Podría ser que por alguna razón no necesitáramos ver toda la información de los datos de una
tabla, sino que únicamente necesitamos totalizar estos datos, agrupándolos por algún o algunos
campos concretos.
Para ello, accederemos al menú Ver – Totales y a continuación procederemos a agrupar por el
campo que necesitamos y a escoger la función que queremos que nos realice dicho cálculo.
También podríamos pulsar el botón Totales de la barra de herramientas.
- 37 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 6.13. Botón totales en la barra de herramientas
Una vez realizados estos pasos para convertir la consulta de selección en una consulta de
totales, Access, visualiza Agrupar por en la fila Total de todos los campos que se encuentran
en la cuadrícula de diseño. En este momento, los registros de cada campo estarán agrupados
pero no totalizados. Si ejecutáramos la consulta, obtendríamos una fila para cada conjunto de
valores únicos, pero no totales. Podemos crear totales reemplazando el ajuste Agrupar por,
por alguna de las funciones que se incorporan.
- 38 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 6.14. Funciones de totales
Consultas de parámetros
Hasta ahora, nos hemos basado en introducir criterios de selección directamente en la ventana
consulta en vista diseño. Sin embargo, no tenemos que decir los valores que deseamos que
Access busque exactamente en el momento de diseñar la consulta. En su lugar, podemos incluir
un parámetro en la consulta y Access emitirá un mensaje para que indiquemos el criterio antes
de ejecutar la consulta.
Para establecer un parámetro, introduciremos un nombre o una frase encerrada entre corchetes
[Nombre o frase que deseemos colocar], en lugar de introducir un valor en la fila de criterios. Lo
que encerremos entre corchetes se convertirá en el nombre por el que Access conocerá el
parámetro. Access visualizará este nombre en un cuadro de diálogo cuando se ejecute la
consulta, de modo que sería una buena idea introducir una frase que describa lo que en realidad
deseamos. Como podemos introducir varios parámetros en una consulta cada nombre o frase
debe ser única e informativa.
- 39 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 6.15. Parámetros en una consulta
Cuando ejecutemos la consulta aparecerá un cuadro de diálogo que nos solicitará la información
del parámetro:
Figura 6.16. Cuadro de diálogo solicitud de parámetro
- 40 -
www.professionalscat.net
[email protected]
@profesionalscat
7. CONSULTAS DE ACCIÓN
Una buena descripción para las consultas de acción, es que son un poco peligrosas ya que
modifican datos de una tabla, se recomienda que antes de ejecutarlas se realicen copia de los
registros de las tablas por lo que pudiera pasar.
Existes cuatro tipos diferentes de consultas de acción, cada uno de ellos actuará de una manera
diferente con los registros de nuestras tablas.

Consulta de Creación de tablas

Consulta de Actualización

Consulta de Datos anexados

Consulta de eliminación
Para crear una consulta de acción, empezaremos a crear una consulta como si de una de
selección se tratara y para convertir una consulta de selección a cualquiera de las consultas
mencionadas, haremos un clic en la opción correspondiente del menú Consulta.
Figura 7.1. Consultas de acción
También podríamos hacerlo a través la opción correspondiente del botón Tipo de consulta de la
barra de herramientas
- 41 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 7.2. Botón tipos de consulta
Para ejecutar una consulta de acción, sólo tendremos que hacer clic en el botón ejecutar de la
barra de herramientas de la ventana de la vista diseño de la consulta
Figura 7.3. Botón ejecutar
o bien, abriendo la consulta desde la ventana de la base de datos. De cualquier forma, nos
indicará siempre lo que estamos a punto de modificar.
Figura 7.4. Cuadro de aviso de eliminación de registros (Consulta de eliminación)
Consulta de creación de tablas
Servirá para almacenar como una nueva tabla, los resultados que son extraídos de una consulta
de selección. Si ejecutamos la misma consulta una y otra vez sobre datos que no son
modificados, puede que sea más rápido acceder a los datos desde la tabla en lugar de hacerlo
desde una consulta, particularmente si esa consulta debe unir varias tablas.
- 42 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 7.5. Consulta de creación de tablas en la ventana de la base de datos
Al indicar a Access que queremos crear una consulta de creación de tablas, aparecerá una
ventana que nos pedirá el nombre y la ubicación de la nueva tabla de datos.
Figura 7.6. Cuadro de diálogo crear tabla
Consulta de actualización
A veces es necesario modificar un conjunto indeterminado de registros en una tabla basándose
en unos criterios concretos y hacerlo manualmente sería perder demasiado tiempo. Para ello,
crearemos consultas de actualización, que servirán precisamente para modificar los datos de
una tabla.
- 43 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 7.7. Consulta de Actualización en la ventana de la base de datos
Consulta de datos anexados
Este tipo de consultas, nos permitirá copiar un conjunto seleccionado de información e insertarlo
en otra tabla. También podremos utilizar una consulta de datos anexados para traer datos
procedentes de otra fuente a la base de datos (por ejemplo, una lita de nombres y direcciones
obtenidas a partir de una empresa de lista de correos).
Figura 7.8. Consulta de Datos anexados en la ventana de la base de datos
Cuando le indicamos a Access, que queremos convertir la consulta de selección en una consulta
de datos anexados, primero nos pedirá que le indiquemos como se llama la tabla a la que
queremos agregar los datos y a continuación en la ventana de diseño, aparecer una fila nueva
llamada anexar a, donde, si los campos se llaman igual automáticamente colocará cada uno de
los nombres a los que queremos añadir los datos correspondientes y sino, podremos escogerlos
manualmente desde la lista correspondiente de los nombres de campo.
- 44 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 7.9. Escoger campos anexar
Consulta de eliminación
La utilizaremos para eliminar de forma masiva los datos de una tabla, siguiendo unos criterios
determinados.
Figura 7.10. Consulta de Eliminación en la ventana de la base de datos
- 45 -
www.professionalscat.net
[email protected]
@profesionalscat
8. DISEÑO DE CONSULTAS AVANZADAS – SQL
Una breve historia de SQL
En el trasfondo de todas las consultas de Microsoft Access se encuentra el lenguaje de órdenes
de base de datos SQL. Aunque podemos diseñar la mayoría de las consultas utilizando el
interfaz gráfico de la cuadrícula de diseño, Access guarda cada consulta que ha sido diseñada
como un mandato SQL. Para aquellos tipos de consultas avanzadas que utilizan los resultados
de una segunda consulta como condición de comparación, necesitamos conocer SQL para poder
definir la segunda consulta (denominada subconsulta). Además, no podremos utilizar la
cuadrícula de diseño para construir todos los tipos de consultas disponibles en Access; para
algunas de ellas deberemos utilizar SQL.
A principios de los años setenta, en sus proyectos de investigación, IBM ideó un lenguaje
denominado Structured English Query Language (SEQUEL) para construir un sistema de gestión
de base de datos relacional. Este lenguaje evolucionó hasta convertirse en SEQUEL/2 y
finalmente en Structured Query Language (SQL, Lenguaje de consulta estructurado). Además,
hubo otras empresas que se interesaron por el concepto de bases de datos relacionales y el
interfaz SQL que había surgido. Relational Software, Inc (actualmente Oracle Corporation) creó
un producto denominado Oracle en el año 1979. En 1981, IBM lanzó su primer producto,
denominado SQL Data System (SQL/DS).
La sintaxis SELECT de SQL en Microsoft Access
La sentencia SELECT forma el núcleo del lenguaje de base de datos SQL. Utilizaremos la
sentencia SELECT para seleccionar o recuperar las filas y columnas deseadas a partir de las
tablas de nuestra base de datos. Las sintaxis de la sentencia SELECT consta de cinco cláusulas
principales, construidas normalmente de la siguiente manera.
Sintaxis:
SELECT <lista de campos>
FROM <lista de tabla>
WHERE <especificación de selección de fila (criterios)>
GROUP BY <especificación de agrupaciones>
HAVING <especificación de selección de grupo>
ORDER BY <especificación de ordenación>;
- 46 -
www.professionalscat.net
[email protected]
@profesionalscat
Nombre de la columna
El nombre de la columna (normalmente el campo) será especificado por el nombre de la tabla o
consulta de donde se extrae el dato y a continuación el nombre del campo que queremos
separado por un punto.
Ejemplo:
Para especificar un campo llamado NumFactura de una tabla denominada Tb_Facturas
utilizaremos lo siguiente:
Tb_Facturas.NumFactura
Si la tabla o el campo tuvieran espacios en blanco, estos tendrían que estar encerrados entre
corchetes. Para especificar un campo llamado Num Factura de una tabla denominada
Tb_Facturas utilizaremos la siguiente sintaxis:
Tb_Facturas.[Num Factura]
Cláusula FROM
Especifica las tablas o consultas que proporcionan los datos de origen para su consulta.
Sintaxis:
FROM {Nombre de tabla | Nombre de consulta de selección | Tabla combinada},...
IN <especificación del origen>
{INNER | LEFT | RIGHT} JOIN (para hacer las relaciones entre tablas)
{Nombre de la tabla | Nombre de la consulta | tabla combinada}
ON <especificación de combinación>
Ejemplo:
Para seleccionar la información acerca de los clientes cuyas compras superen los 100 euros,
introduciremos los siguiente
cEjempPedidoCliente>100
Código completo a utilizar:
SELECT tblClientes.IDCliente, tblClientes.Nombre, tblClientes.Apellidos,
tblPedidos.FechaPedido, tblDetallesPedido.NúmeroISBN, tblLibros.Título,
tblDetallesPedido.Cantidad, tblDetallesPedido.Descuento, tblLibros.PrecioSug,
Round(CCur((tblDetallesPedido.Cantidad*tblLibros.PrecioSug)*(1-
- 47 -
www.professionalscat.net
[email protected]
@profesionalscat
tblDetallesPedido.Descuento)),2) AS PrecioExt
FROM (tblClientes INNER JOIN tblPedidos ON tblClientes.IDCliente = tblPedidos.IDCliente)
INNER JOIN (tblLibros INNER JOIN tblDetallesPedido ON tblLibros.NúmeroISBN =
tblDetallesPedido.NúmeroISBN) ON tblPedidos.IDPedido = tblDetallesPedido.IDPedido
WHERE (((Round(CCur(([tblDetallesPedido].[Cantidad]*[tblLibros].[PrecioSug])*(1[tblDetallesPedido].[Descuento])),2))>100));
Consultas de Acción SQL
Utilizaremos este tipo del consulta SQL para eliminar, insertar o actualizar datos o para crear
una tabla nueva a partir de datos existentes. Las consultas de acción son particularmente
potentes dado que nos permiten operar sobre conjuntos de datos, no sobre simples filas.
Sentencia DELETE
Elimina una o más filas de una tabla. La cláusula WHERE es opcional. Si no especificamos una
cláusula WHERE, serán eliminadas todas las filas de la tabla que se especifican en cláusula
FROM. Si especificamos una cláusula WHERE, la condición de búsqueda será aplicada a cada
una de las filas de la tabla, y solamente serán eliminadas aquellas filas que cumplan las
condiciones.
Sintaxis
DELETE [<Lista_de_Selección]
FROM {(Nombre_de_tabla [ [AS] nombre_de_correlación ] | nombre_consulta_de_selección [
[AS] Nombre_de_correlación ] } | <tabla combinada>}, …
(IN <especificación_del_origen>)
[WHERE <criterios>];
Ejemplos
Para eliminar todas las filas de la tabla tblDetallesdePedido, introduciremos lo siguiente:
DELETE FROM tblDetallesPedido;
Para eliminar todos los registros de la tabla tbLibros que son libros de MS-DOS, introduciremos
los siguiente:
DELETE tbLibros.*, tbLibros.NumeroISBN
FROM tbLibros
WHERE (((tbLibros.NumeroISBN) IN
SELECT tbCategoriasLibros.NumeroISBN
FROM tbCategorias
INNER JOIN TbCategoriasLibro
ON tbCategorias.IDCategoria = tbCategoriasLibro.IDCategoria
WHERE tbCategorias.Categoria = “MS-DOS”)));
- 48 -
www.professionalscat.net
[email protected]
@profesionalscat
Sentencia INSERT
Inserta uno o más registros nuevos en la tabla especificada. Cuando utilicemos la cláusula
VALUES, solamente será insertada una fila. Si utilizamos una sentencia de selección, el número
de filas insertado será igual al número de registros devueltos por la sentencia de selección.
Sintaxis:
INSERT INTO nombre_de_tabla [((nombre_campo), …)]
IN <especificación_del_origen> ]
(VALUES ((literal), …) | sentencia_de_selección)
Ejemplo:
Para insertar una nueva fila en la tabla tbLibrerias, introduciremos los siguiente:
INSERT INTO tbLibrerias (NombreLibreria, Direccion, ciudad, Provincia, CP, Pais, Telefono,
Fax, Mail)
VALUES (“El buen libro”, “C/ Nueva, 33”, “Igualada”, “Barcelona”, “08700”, “España”,
“938044433”, “938044433”, “[email protected]”)
Para calcular los totales de las ventas realizadas en un determinado mes e insertarlos en una
tabla de trabajo de totales, introduciremos los siguiente:
PARAMETERS [Año a resumir:] SHORT, [Mes a resumir:] SHORT;
INSERT INTO zSumVentas (NumeroISBN, Titulo, MesVentas, TotalVentas)
SELECT tbLibros.NumeroISBN, TbLibros.Titulo, Formato([FechaPedido],”mmmm” “,” “yyyy”)
AS MesPedido, Suma(Round(CMoneda(([Cantidad]*[PrecioSug])*(1-[Descuento]), 2)) AS
TotalPedido
FROM tbPedidos INNER JOIN (TbLibros INNER JOIN tbDetallesPedido ON tbLibros.NumeroISBN
= TbDetallesPedido.NumeroISBN) ON (TbPedidos.IDPedido = TbDetallesPedido.IDPedido
WHERE (((Año [FechaPedido])) = [Año a resumir:])
AND ((Mes([FechaPedido])) = [Mes a resumir]))
GROUP BY TbLibros.NumeroISBN, TbLibros.Titulo, Formato([FechaPedido],”mmmm” “, ”
“yyyy”);
Sentencia SELECT…INTO
Crea una nueva tabla a partir de los valores seleccionados de una o más tablas.
Sintaxis:
SELECT [ALL | DISTINCT | DISTINCTROW | TOP número [PERCENT] ] <lista_de_selección>
INTO nombre_nueva_tabla
[IN <especificación_del_origen>]
FROM { {nombre_de_tabla [ [AS] nombre_de_correlación] | nombre_consulta_seleccion [
[AS] nombre_de_correlacion]} | <tabla_combinada> }, …
[IN <especificación_del_origen>]
[WHERE <criterios>]
- 49 -
www.professionalscat.net
[email protected]
@profesionalscat
[GROUP BY nombre_campo, ...]
[HAVING <criterios>]
[UNION [ALL] <sentencia_de_seleccion>]
[ [ORDER BY {Nombre_Campo [ASC | DESC] }, ... ] | IN <”Nombre_base_datos_origen”>
<[Cadena_de_conexión_origen]>
[WITH OWNERACCESS OPTION];
Ejemplo:
Para crear una nueva tabla que resuma todas las ventas por libro y por mes, introduciremos lo
siguiente:
SELECT TbLibros.NumeroISBN, TbLibros.Titulo, Format([FechaPedido], “mmm” “ yyyy”””) AS
MesVentas, Sum(Round(CCur(([Cantidad]*[PrecioSug])*(1-[Descuento])), 2)) AS TotalVentas
INTO zTbVentasMensuales
FROM TbPedidos INNER JOIN (TbLibros INNER JOIN TbDetallesPedido ON
TbLibros.NumeroISBN = TBDetallesPedido.NumeroISBN) ON tbPedidos.IDPedido =
TbDetallesPedido. Impedido
WHERE (((TbLibros.FueraDeImpr) = False))
GROUP BY TbLibros.NumeroISBN, TbLibros.Titulo, Format([FechaPedido], “mmm” “ yyyy” “”);
Sentencia UPDATE
La utilizaremos para actualizar las columnas seleccionas de todos los registros que satisfacen los
criterios de búsqueda. Sino se introduce una cláusula WHERE, se verán afectados todos los
registros de la tabla o consulta especificada.
Sintaxis:
UPDATE { {nombre_de_tabla [ [AS] nombre_de_correlacion ] |
nombre_de_consulta_de_seleccion [ [AS] nombre_de_correlacion ] <tabla_combinada>}, ...
[IN <especificación_del_origen>] }
SET {Nombre_columna = {<expresión> | NULL }}, ...
[WHERE <condicion_de_busqueda>]
Ejemplo:
Para incrementar el precio de todos los libros sobre Visual Basic en un 10%, introduciríamos lo
siguiente:
UPDATE TbLibros
SET tbLibros.precioSug = Round(CCur([PrecioSug]*1.1), 2)
WHERE (((TbLibros.NumeroISBN) IN (SELECT tbCategoriasLbiro.NumeroISBN FROM
TbCategorias INNER JOIN TbCategoriasLibro ON tbCategorias.IDCategoria =
TbCategoriasLbiro.IDCategoria
WHERE TbCategorias.Categoria = “Visual Basic”)));
- 50 -
www.professionalscat.net
[email protected]
@profesionalscat
9. LOS FORMULARIOS
Los formularios son los objetos de la base de datos que nos permiten insertar, modificar,
visualizar o eliminar datos de una tabla o consulta de una forma más atractiva y cómoda para el
usuario. Podremos diseñar formularios para muchos propósitos, presentar y editar datos,
formularios que den acceso a otros objetos, introducción de datos, presentación de mensajes,
imprimir información, etc.
Los formularios tienen la ventaja de poder:

Mostrar datos de varias tablas o consultas a la vez

Realizar cálculos en campos

Crear y utilizar gráficos

Utilizar diferentes tipos de fuentes, colores, y cualquier otro formato
Encabezados, secciones de detalle y pies
Normalmente, colocaremos la información de la tabla o consulta que deseamos presentar, en la
sección de detalle en el centro de la ventana Formulario. Podemos añadir un encabezado en la
parta superior de la ventana o un pie en la parte inferior de la misma para visualizar la
información o los controles que no es necesario cambiar cada registro diferente.
Los Autoformularios
Estos son la forma más rápida y sencilla de crear un formulario para introducir datos en una
tabla. Para crearlo, desde la ventana principal de la base de datos, haremos un clic en nuevo.
Aparecerá el cuadro de diálogo que nos permitirá escoger el tipo de formulario que queremos
crear, así como la tabla o consulta en que se tienen que recoger los datos.
- 51 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.1. Cuadro Nuevo formulario
Podremos crear cinco tipos de autoformularios:

En columnas  1 registro por pantalla

En tabla  Varios registros por pantalla (formularios continuos)

Hoja de datos  Parecidos al estilo de las tablas

Tablas dinámicas

Gráficos dinámicos
Desplazamiento a través de un formulario y tratamiento de los
datos
Introducir y modificar datos
Probablemente la mayor parte de los formularios que diseñemos permitirá insertar nuevos
registros, cambiar los valores de los campos o eliminar registros en vista Formulario o en Vista
Hoja de datos.
Para introducir un nuevo registro, podremos hacerlo utilizando las diferentes opciones que nos
proporciona Access. Desde el menú Insertar – Nuevo registro
- 52 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.2. Insertar – Nuevo registro
Utilizando el botón nuevo registro de la barra de herramientas:
A través del botón nuevo registro de los botones de desplazamiento del propio formulario:
Figura 9.3. Nuevo registro – Botones de desplazamiento
Estos botones, al igual que en las tablas o consultas, nos servirán para poder desplazarnos por
los diferentes registros de un formulario.
Figura 9.4. Botones de desplazamiento
En alguna ocasión, estaremos utilizando un formulario de introducción de datos, por lo que al
abrir el formulario, aparecería preparado para la inserción de un nuevo registro.
Si un formulario permite realizar actualizaciones, podremos cambiar o eliminar fácilmente los
datos existentes en las tablas o consultas de donde proceden los datos del formulario. Si el
formulario ha sido diseñado en Vista hoja de datos, podremos hacerlo exactamente igual que
cuando trabajamos con una tabla.
Al igual que en las hojas de datos, para modificar, tendremos que situarnos en el registro que
queramos cambiar y a partir de ahí utilizar las técnicas como si se tratara de un procesador de
texto. Teniendo en cuenta que para saltar de campo, podremos utilizar la tecla TAB o para ir al
campo anterior Máyus – TAB.
- 53 -
www.professionalscat.net
[email protected]
@profesionalscat
Diseño de formularios
Un formulario podremos realizarlo desde cero utilizando la vista diseño o bien modificar su
diseño, utilizando la misma vista.
Para crear un formulario desde cero, podremos utilizar la opción Crear un formulario en Vista
diseño de la ventana principal de la base de datos o bien acceder al botón Nuevo y a
continuación escoger Vista diseño y la tabla o consulta de la que se quieren mostrar los datos.
Desde la ventana de vista diseño, podremos controlar cualquier control que aparece en un
formulario. Colocar etiquetas adicionales, botones de acción, listas desplegables (cuadros
combinados), etc.
- 54 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.5. Vista diseño de formulario
El cuadro de herramientas
Es el cuadro que nos proporciona todos los objetos posibles que podemos colocar en un
formulario. También contiene un botón denominado más controles que permite el acceso a
todos los controles ActiveX. Para colocar un determinado control en el formulario solo
pulsaremos el botón correspondiente a ese control en el cuadro de herramientas. Cuando
desplacemos
el
puntero
del
ratón
sobre
el
formulario,
éste
cambiará
su
apariencia
convirtiéndose en un icono que representa la herramienta que se ha seleccionado. Situamos el
punteo del ratón el lugar donde queremos colocar el control y pulsamos el botón izquierdo para
colocar el control sobre el formulario. Si queremos cambiar el tamaño del control en el momento
de su colocación en el formulario, haremos clic y arrastraremos el puntero del ratón hasta
- 55 -
www.professionalscat.net
[email protected]
@profesionalscat
alcanzar el tamaño deseado (También podemos cambiar el tamaño de un control una vez
colocado arrastrando los ajustadores de tamaño de sus bordes o esquinas).
Figura 9.6. Cuadro de herramientas
Herramienta seleccionar objetos: Es la herramienta predeterminada. Utilizaremos esta
herramienta para seleccionar, cambiar el tamaño y editar los controles existentes.
Botón Asistente para controles: Si este botón está activado, cuando pulsemos un
control que tenga asignado un asistente, podremos ir siguiendo una serie de pasos para
configurar el control.
Herramienta etiqueta: Utilizaremos esta herramienta para crear controles de etiqueta
que contengan un texto fijo en el formulario. Por omisión, la mayor parte de los controles
poseen un control de etiqueta asociado a los mismos. Podemos utilizar esta herramienta
para crear etiquetas independientes en los encabezados o para colocar instrucciones en el
formulario.
Cuadro de texto: Para crear controles de cuadro de texto para la visualización de campos
de las tablas o para realizar cálculos entre campos.
Grupo de opciones: Utilizaremos este para crear un grupo de opciones que contenga uno
o más botones de alternar, botones de opción o casillas de verificación. Podemos asignar un
valor numérico independiente para cada botón o casilla de verificación que se incluya en el
grupo. Cuando tengamos más de un botón o casilla de verificación en un grupo, sólo uno de
ellos podrá estar seleccionado en un momento dado y el valor de ese botón se convertirá en
el valor del grupo de opciones.
Botón
de
alternar:
Servirá
para
crear
un
control
que
contenga
un
valor
Activado/desactivado, verdadero/falso o Sí/No. Si se asocia el control a un campo de tabla
- 56 -
www.professionalscat.net
[email protected]
@profesionalscat
o consulta, podremos cambiar el valor del campo a través de este control.
Botón de opción: También se le puede llamar botón de radio. Estos serán parecidos a los
botones de alternar en cuanto al valor que guardan. Si se encuentra en un grupo de
opciones, únicamente podremos pulsar uno de ellos, desactivándose el otro al marcar la
opción que deseemos.
Casilla de verificación: Al igual que las anteriores, será para controlar valores
Verdadero/Falso, Sí/No, Activado/Desactivado.
Cuadro combinado: utilizaremos esta herramienta para crear un cuadro desplegable que
contenga una lista de posibles valores para el control y un cuadro de texto que puede ser
editado manualmente. Podremos cambiar los valores del cuadro, utilizando una tabla o
consulta o una lista de valores previamente definida.
Cuadro de lista: Parecida a la anterior, pero mostraría varios valores a la vez,
dependiendo de lo grande que confeccionáramos nuestro cuadro. Podremos seleccionar
varios valores en la lista a la vez.
Botón de comando: Podremos utilizarlo para activar una macro o procedimiento de
evento que realice una determinada acción.
Imagen: La utilizaremos para añadir una imagen estática en el formulario.
Marco de objeto independiente: Servirá para añadir un objeto procedente de otra
aplicación que soporte la incrustación y vinculación de objetos. El objeto pasará a formar
parte del formulario, no de los datos de la tabla o consulta subyacente. Podremos añadir
imágenes, sonidos, gráficos o diapositivas para mejorar la apariencia del formulario.
Marco de objeto dependiente: Lo utilizaremos para mostrar los objetos OLE de una tabla
o consulta.
Salto de página: Podremos utilizarlo cuando nuestro formulario contenga tantos datos que
no quepan correctamente. Podremos montar un formulario de varias páginas.
- 57 -
www.professionalscat.net
[email protected]
@profesionalscat
Control ficha: Utilizaremos esta herramienta para crear una serie de páginas de fichas en
un formulario. Cada página puede contener un número de otros controles que visualicen
información. El control ficha funciona de forma similar a muchas de las ventanas de cuadros
de diálogo u hoja de propiedades de Access.
Subformulario/subinforme: Esta herramienta será para incrustar otro formulario en el
formulario actual. Podemos utilizar un subformulario para mostrar datos procedentes de
una tabla o consulta que están relacionados con los datos del formulario principal. Access
mantiene el enlace entre los dos formularios de forma automática.
Línea: Utilizaremos esta herramienta para añadir línea al formulario y mejorar su
apariencia.
Rectángulo: Utilizaremos esta herramienta para añadir rectángulos al formulario y mejorar
su apariencia.
Más controles: Al pulsar este botón mostrará un menú que contendrá todos los controles
ActiveX que han sido instalados en el sistema. No todos los controles ActiveX pueden
funcionar correctamente en Access.
La lista de campos
La lista de campos se utiliza en combinación con el cuadro de herramientas para colocar
controles dependientes (controles vinculados a campos de una tabla o consulta) en el
formulario. Para hacerlo simplemente será necesario arrastrar los campos de la lista hacia la
zona del formulario que deseemos colocarlo.
La hoja de propiedades
El formulario, cada sección del formulario (encabezado, detalle y pie) y cada control del
formulario poseen una lista de propiedades asociadas, que pueden ser definidas haciendo uso
de la hoja de propiedades:
- 58 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.7. Cuadro de Propiedades
El tipo de propiedades que se puedan especificar varían dependiendo del control que se tenga
seleccionado.
Desplazamiento y cambio de tamaño de los controles
Por omisión, Access crea cuadros de texto de tres centímetros de ancho con una etiqueta
situada dos centímetros a la izquierda del cuadro de texto. Para algunos de los campos, tres
centímetros es más que suficiente para visualizar el valor del campo, pero para otros, el cuadro
de texto no será suficiente o podría ser demasiado grande para el contenido del mismo.
Para cambiar la posición y el tamaño de un control, en primer lugar será necesario que
seleccionemos el control, tendremos que asegurarnos que tenemos presionado el botón de la
herramienta seleccionar objetos. Cuando hagamos clic sobre el objeto, aparecerán los
ajustadores de tamaño del mismo.
Figura 9.8. Ajustadores de tamaño.
Para cambiar el tamaño, nos situaremos sobre los ajustadores de tamaño y aparecerán unas
flechas de doble punta, a través de ellas, clicando y arrastrando cambiaremos el tamaño del
objeto.
- 59 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.9. Cambiar tamaño de un objeto
Si quisiéramos mover el objeto, buscaríamos encima del contorno del mismo, el cursor en forma
de mano, con este podríamos mover el objeto y además la etiqueta que tenga asociada.
Figura 9.10. Mover objeto y etiqueta asociada
Si sólo quisiéramos mover el objeto, se puede apreciar que en la parte superior izquierda del
control seleccionado hay un cuadrado más grande desde donde podríamos hacerlo. Aparecerá
un símbolo con un dedo apuntando hacia arriba.
Figura 9.11. Mover solo objeto sin etiqueta.
Simplificación de la introducción de datos con un formulario
Un inconveniente que se presenta al trabajar con una base de datos relacional es que a menudo
trabajamos con información almacenada en varias tablas. Esto no supone un problema cuando
estamos utilizando una consulta para unir los datos, aunque el trabajo con varias tablas puede
crear confusión si lo que estamos haciendo es introducir nuevos datos. Access proporciona
algunas formas de mostrar la información procedente de varias tablas relacionadas, para
facilitar la introducción de los datos.
Cuadros combinados
Cuando creamos un cuadro combinado desde el cuadro de herramientas y tenemos activado el
botón Asistente para controles, aparece un asistente desde el que podremos configurar
nuestro cuadro combinado según deseemos.
- 60 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.12. Asistente para cuadros combinados
El primer paso, según se muestra la figura 9.12., anterior, podremos escoger que valores
aparecerán en el cuadro combinado y para que se utilizarán los mismos.
Si escogemos la primera opción Deseo que el cuadro combinado busque los valores en
una tabla o consulta, previamente tendremos que tener creada la tabla o consulta que
necesitamos. La opción siguiente Escribiré los valores que desee, será apropiada para
utilizarla cuando tengamos pocos valores en una lista y no sea necesario añadir más valores
posteriormente.
La última opción Buscar un registro en el formulario según el valor que he seleccionado
en el cuadro combinado, solo aparecerá cuando el cuadro combinado lo coloquemos en un
formulario y será precisamente para buscar un valor en el formulario donde lo estemos
colocando.
Dependiendo de la opción que escojamos, el asistente se comportará de diferentes formas, si
escogemos la primera, nos preguntará de qué tabla o consulta queremos mostrar los valores. La
segunda, nos mostrará escribir a nosotros los valores y la última nos preguntará qué campo
será el que contendrá la información que queremos buscar en el cuadro combinado.
- 61 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.13. Asistente para cuadros combinados. Segundo paso (depende de la opción seleccionada en el primero)
Una vez colocado el cuadro combinado en nuestro formulario, podremos modificar su aspecto
desde la ventana de propiedades de dicho cuadro.
Figura 9.14. Pestaña Formato de las propiedades del cuadro combinado

Número de columnas: Número de columnas que contendrá el cuadro combinado y que
dependiendo de la propiedad Ancho de columna, aparecerán cuando despleguemos el cuadro
combinado. Como hay un cuatro aparecerán cuatro columnas, siempre y cuando en el Ancho de
columna no exista ningún cero en la anchura de las columnas.
- 62 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.15. Cuadro combinado población con cuatro columnas

Encabezados de columna: Por si queremos que en las columnas visibles aparezca el nombre del
campo.

Ancho de columnas: El ancho que se le dará a cada una de las columnas, en el ejemplo se
especifica como:
Figura 9.16. Ancho de columnas

Filas en lista: La cantidad de filas (poblaciones) que se verán cuando despleguemos el cuadro
combinado.

Ancho de la lista: El ancho total del cuadro combinado. Si se coloca la palabra Auto la lista
desplegable se adaptará al ancho del cuadro combinado (podrían no verse todos los campos
correctamente), normalmente el ancho de la lista es la suma de todos los anchos de las columnas.
En este caso 10cm.
En la pestaña Datos de la ventana de propiedades del cuadro combinado, tendremos aquellas
propiedades referentes a los datos que aparecen dentro del cuadro.
- 63 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.17. Ventana propiedades de cuadro combinado – Pestaña Datos

Tipo de origen de la fila: De donde serán los datos mostrados en el cuadro combinado. Si de una
tabla o consulta o bien de una lista de valores que escribiremos nosotros.

Origen de la fila: Si hemos escogido en la propiedad Tipo de origen de la fila Tabla/Consulta, en
este momento marcaremos la tabla o consulta de donde procederán los datos. Si por el contrario
hubiéramos marcado Lista de valores, ahora colocaríamos los valores que necesitamos separados
por punto y coma (;)
Ejemplo: Barcelona;Tarragona;LLeida;Girona

Columna dependiente: Será la columna que contendrá el valor que guardaremos en el campo de
la tabla si este control lo tuviéramos asociado con alguno o bien el valor que utilizará
posteriormente para realizar la búsqueda que necesitemos.

Limitar a la lista: Si establecemos este valor a Sí, no podremos colocar valores que no se
encuentren dentro de la lista.
Cuadros de lista
Un cuadro de lista, es prácticamente lo mismo que un cuadro combinado, con la diferencia que
en lugar de aparecer una flecha para poder desplegar el cuadro, aparecerá directamente la lista
para poder escoger el valor o valores que se desee
- 64 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.18. Cuadro de lista
Dependiendo si la propiedad Selección múltiple que se encuentra en la ventana de propiedades
en la pestaña Otras, está en ninguna, simple o extendida, la forma de las posibles selecciones
será diferente.

Ninguna: No se permiten selecciones múltiples, únicamente permite escoger un valor.

Simple: Los elementos múltiples se seleccionan o deseleccionan eligiéndolos con el ratón o
presionando la barra espaciadora.

Extendida: Los elementos múltiples se seleccionan manteniendo presionada la tecla MAYÚS y
eligiéndolos con el ratón o manteniendo presionada MAYÚS y presionando una tecla de dirección
para extender la selección desde el elemento seleccionado previamente al elemento actual.
También puede seleccionar elementos arrastrando el ratón. Manteniendo presionada CTRL y
haciendo clic en un elemento, selecciona o deselecciona ese elemento.
Propiedad column de los cuadros de lista o cuadros combinados
Si deseamos que uno de los valores de cualquiera de las columnas nos aparezca en otro cuadro
de texto, por ejemplo que al seleccionar la población, al lado nos coloque el nombre de la
población, el código postal y la provincia, utilizaremos la propiedad column. Teniendo en cuenta
que la primera columna será la número 0, su sintaxis será la siguiente:
NombreControl.column(NúmeroColumna)
Ejemplo:
=NumPoblacion.column(1) & " - " & NumPoblacion.column(2) & " (" &
NumPoblacion.column(3) & ")"
Aparecerá como la imagen siguiente:
- 65 -
www.professionalscat.net
[email protected]
@profesionalscat
Crear una plantilla con Access
Podremos crear un formulario o informe de Access y después hacer que sea la plantilla
predeterminada para la base de datos. Para hacerlo, una vez tengamos creado el objeto iremos
al menú Herramientas – Opciones y en la pestaña Formularios / Informes, asignaremos el
formulario e informe que nosotros queremos como predeterminado.
Figura 9.19. Plantilla para formularios o informes
Crear un autoformato en Access
Al igual que la opción anterior, primero crearemos el formulario o informe que necesitamos y a
continuación si queremos guardarlo como Autoformato para que aparezca cada vez que
utilicemos el asistente en la lista de los autoformatos:
- 66 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.20. Estilos a aplicar en Asistente para formularios
Iremos, con el formulario abierto en vista diseño al menú Formato – Autoformato:
Figura 9.21. Formato – Autoformatos
Escogeremos la opción Personalizar... y a partir de allí escogeremos si queremos crear un nuevo
autoformato, modificar uno existente o bien eliminar uno que ya no queremos volver a utilizar.
- 67 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 9.22. Cuadro de diálogo de Personalizar autoformato
Creará nuestro formulario/informe de autoformato con las características del que tengamos
abierto en ese momento.
- 68 -
www.professionalscat.net
[email protected]
@profesionalscat
10. INFORMES
Los informes constituyen la mejor manera de crear una copia impresa de la información
extraída o calculada a partir de los datos de la base de datos. Aunque cualquier otro objeto se
puede imprimir, e incluso los formularios se pueden preparar para la impresión, los informes
poseen dos ventajas principales sobre otros métodos de impresión de datos.

Los informes pueden comparar, resumir y calcular subtotales a partir de grandes cantidades de
datos.

Los informes pueden ser creados para generar facturas, pedidos de compra, etiquetas postales,
elementos de presentación y otros tipos de documentos de salida que podrían ser necesarios para
dirigir un negocio de manera eficiente.
Los informes están diseñados para agrupar datos, presentar cada grupo de manera
independiente y efectuar cálculos. Los informes funcionan de la siguiente manera:

Podemos definir hasta un máximo de 10 criterios de agrupación para independizar los diferentes
niveles de detalle.

Podemos definir encabezados y pies independientes para cada grupo.

Podemos efectuar cálculos complejos, no sólo dentro de un grupo o de un conjunto de filas sino
también a través de los grupos.

Además de los encabezados y pies de página, podemos definir un encabezado y un pie para todo el
informe.
Al igual que en los formularios, podemos incluir imágenes y gráficos en cualquier sección de un
informe. También podemos incluir subinformes o subformularios dentro de las secciones de un
informe.
Origen de los datos en un informe
La mayor parte de la información en un informe procede de los datos guardados en una tabla o
bien de una consulta que se ha realizado con los datos de estas tablas. Por lo tanto, cuando
creamos un informe necesariamente lo primero que tenemos que hacer es establecer el origen
de los mismos.
Para ello, tendremos que actuar prácticamente igual que en los formularios. Cuando creemos un
Informe en Vista diseño, desde el cuadro de diálogo Nuevo, escogeremos la tabla o consulta en
que necesitamos basar nuestros datos.
- 69 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 10.1. Cuadro de diálogo Nuevo Informe.
O bien desde las propiedades del informe en la pestaña datos y en la propiedad origen del
registro.
Figura 10.2. Propiedades de informe – Origen del registro
Creación de informes utilizando el asistente
Una forma rápida y fácil de crear un informe es utilizar el asistente para informes que incorpora
Access. Esta función es parecida a la que se incorporaba para la creación de los formularios.
Para crear un informe utilizando el asistente, podremos acceder al mismo a través de la opción
Crear un informe utilizando el asistente de la ventana de la base de datos
- 70 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 10.3. Asistente para informes
o bien a través de la opción Asistente para informes del cuadro de diálogo de nuevo informe que
se accede a través del botón Nuevo.
Figura 10.4. Nuevo informe – Asistente para informes
Una vez hemos hecho la elección del asistente, aparecerá el cuadro de diálogo del asistente, en
el primer paso nos dejará escoger la tabla o tablas / consulta o consultas que tienen que
contendrán los campos que formarán nuestro informe.
- 71 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 10.5. Asistente para informes – campos del informe
A través de los botones centrales, igual que hacíamos con el asistente para formularios,
podremos seleccionar los campos necesarios.
Dependiendo de si escogemos una tabla o consulta o más de una tabla o consulta, aparecerá en
el siguiente paso un cuadro diferente.
Figura 10.6. Aparecerá si escogemos una sola tabla
Figura 10.7. Aparecerá si escogemos más de una tabla
La figura 10.6 será la que aparecerá cuando escojamos una sola tabla o consulta y nos ayudará
a colocar algún nivel de agrupamiento de los datos en nuestro informe.
- 72 -
www.professionalscat.net
[email protected]
@profesionalscat
La figura 10.7 será algo parecido pero el nivel de agrupamiento principal se podrá hacer por la
tabla principal o bien que aparezcan todos los datos juntos por la tabla secundaria. En el
ejemplo, la tabla principal, o sea la que tiene la clave principal única, será Tb_Clientes y la
secundaria, es decir la que el campo relacionado no es clave principal será Tb_Articulos.
Al hacer siguiente si hemos escogido una sola tabla o consulta, aparecerá directamente la
opción que nos permitirá ordenar los datos (Figura 10.8) y si hemos escogido más de un objeto,
aparecerá el cuadro del nivel de agrupamiento, es decir, la figura 10.6. y a continuación el paso
siguiente ya nos mostrará el cuadro para ordenar los datos (Figura 10.8).
Figura 10.8. Paso del asistente para informes – Ordenación de los datos
Al hacer siguiente podremos indicarle a Access, como queremos que distribuya los campos
dentro del informe y además que orientación le queremos dar a nuestra página.
- 73 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 10.9. distribución de los datos y orientación de la página
En el paso siguiente nos dará a elegir entre los modelos de formato que tiene el Access
incorporados.
Figura 10.10. Formato del informe
- 74 -
www.professionalscat.net
[email protected]
@profesionalscat
Al final en el último paso solo solicitará el nombre de nuestro informe, que además le servirá para
utilizado como título del informe al imprimir.
Figura 10.11. Título del informe
Encabezados, secciones de detalle, pies y grupos
Un informe dispondrá de diferentes partes según lo necesitemos. Posibles partes de un informe:

Encabezado del informe: Solo se imprimirá en la primera página del informe

Encabezado de página: Se visualizará en todas las páginas del informe

Encabezado de grupo: Aparecerá cuando hayamos realizado una agrupación. Existirán tantos
encabezados de grupo como agrupaciones necesitemos.

Detalle: Un informe no tendría sentido sin la sección detalle pues será la zona donde se ubicarán
los datos. Es la única zona que no se puede desactivar.

Pie de grupo: Podremos activarla o no si necesitamos que cuando finalice el grupo en cuestión,
aparezca algún tipo de información o realice algún tipo de operación matemática.

Pie de página: Aparecerá en todas las páginas del informe.

Pie del informe: Sólo se imprimirá en la última página del informe.
- 75 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 10.12. Secciones de un informe
Si necesitamos realizar algún tipo de ordenación o agrupación en un informe, accederemos a
través de la opción Ver – Ordenar y agrupar
- 76 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 10.13. Cuadro de Ordenar y agrupar
Desde este cuadro, podremos indicarle si queremos ordenar o bien agrupar. Si marcamos la
opción Sí, en las propiedad Encabezado del grupo de un campo, automáticamente estaremos
agrupando por este campo, si no, únicamente podremos indicarle un tipo de ordenación a
través de la columna Orden.
Configuración de la impresión
Desde la opción Configurar página del menú Archivo en la vista diseño del informe,
podremos configurar los márgenes del documento y su orientación, así como las columnas en
las que queremos que se distribuyan los datos
Figura 10.14. Cuadro de diálogo configurar página
- 77 -
www.professionalscat.net
[email protected]
@profesionalscat
11. MACROS
En Microsoft Access, podemos definir una macro para que realice cualquier tarea que pudiese
ser iniciada con el teclado o con el ratón. La verdadera potencia de las macros de Access es su
habilidad para automatizar la respuesta a muchos tipos de eventos sin que sea necesario
aprender un lenguaje de programación. Un evento puede ser un cambio en los datos, la
apertura o cierre de un formulario o informe, o incluso un cambio de selección de un control a
otro. Dentro de una macro, podemos incluir varias acciones y definir condiciones de
comprobación de tal como que se lleven a cabo diferentes acciones dependiendo de los valores
de los formularios o informes.
La creación de macros para que los usuarios lleven a cabo varias órdenes del menú pulsando un
botón, garantiza que las tareas se realicen del mismo modo.
Creación de una macro
Desde la ventana de la base de datos, accederemos al apartado macros y desde esta zona,
pulsaremos el botón Nuevo, al hacerlo, Access, nos mostrará la ventana de creación de
macros.
Figura 11.1. Ventana de macros
- 78 -
www.professionalscat.net
[email protected]
@profesionalscat
Esta ventana se divide principalmente en dos apartados, las acciones configuradas que será la
parte superior y los argumentos de la acción, que los encontraremos en la parte inferior de la
ventana y que mostrará unas u otras opciones dependiendo de la macro que escojamos.
Para seleccionar una acción desplegaremos la flecha que hay en el apartado Acción y
seleccionaremos la acción más adecuada para nuestro caso.
Figura 11.2. Escoger una acción
Imaginemos que seleccionamos la acción Abrir Formulario, a continuación en la parte inferior
tendremos que indicarle qué formulario y como queremos abrirlo.
Figura 11.3. Argumentos de la acción
Podremos ir colocando tantas acciones como necesitemos que se efectúen cuando se realice un
evento (por ejemplo un clic en algún botón)
Guardar una macro
Para guardar la macro podremos simplemente cerrarla y nos preguntará si queremos guardar
los cambios realizados o bien pulsando el botón guardar de la barra de herramientas.
- 79 -
www.professionalscat.net
[email protected]
@profesionalscat
Asignación de una macro
Una vez hemos creado la macro, podremos asignársela a algún evento, estos existen en los
formularios e informes y los asignaremos a través de las propiedades de los objetos de los
mismos.
Un ejemplo sería, en el momento de pulsar un botón en el formulario de clientes, queremos que
nos muestre un informe de todos los clientes, para ello primero crearemos un macro para abrir
el informe, que previamente también tendremos que haber creado. A continuación crearemos
un botón en el formulario, situado, por ejemplo, en el pie del formulario.
Figura 11.4. Botón para listar clientes
Y le asignaremos la macro a través del evento Al hacer clic del botón, para ello entramos a las
propiedades del botón y nos situamos en la pestaña Eventos, hacemos un clic en el evento
mencionado y desde el desplegable, escogemos la macro que previamente habíamos creado, si
no lo hubiéramos hecho, siempre podremos crearlo en ese momento desde el botón con los tres
puntitos
Figura 11.5. Asignación de la macro al evento Al hacer clic
- 80 -
www.professionalscat.net
[email protected]
@profesionalscat
Conversión de las macros a Visual Basic
Si habíamos creado alguna macro y con posterioridad pensamos que sería conveniente ejecutar
las acciones de nuestra base de datos a través de la programación, utilizando Visual Basic para
Aplicaciones, podremos convertir nuestras macros a código VBA, sin muchas dificultades.
Imaginemos que hemos creado la macro del ejemplo anterior y la queremos pasar a código,
abriremos el formulario o informe donde se encuentren asignadas las macros e iremos al menú
Herramientas – Macro – Convertir macros del formulario a Visual Basic. Al hacerlo,
Access convertirá la macro a código y la asignará al mismo evento como Procedimiento de
Evento, sólo nos quedará deshacernos de la macro, borrándola.
Figura 11.6. Ventana de Visual Basic para aplicaciones – Macro convertida
También podríamos convertirla directamente desde la ventana de la base de datos en la zona de
las
macros,
seleccionaríamos
la
macro
que
nos
interesa
convertir
y
a
continuación
Herramientas – Macro – Convertir macros a Visual Basic, nos creará un módulo nuevo con
la macro convertida.
Figura 11.7. Módulo de macro convertida
- 81 -
www.professionalscat.net
[email protected]
@profesionalscat
12. MÓDULOS
Los módulos, más potentes que las macros, son programas de Microsoft Visual Basic para
Aplicaciones (VBA). VBA es un lenguaje de programación de alto nivel desarrollado por Microsoft
cuya finalidad es la de crear un conjunto común de instrucciones VBA, además de su propio
conjunto. Mientras las macros permiten automatizar cuatro o cinco docenas de acciones, VBA
incluye cientos de órdenes. Este número puede ser aplicado de manera indefinida con otros
muchos complementos. Utilizaremos VBA para llevar a cabo tareas que son demasiado
complejas como para ser tratadas con macros, como la apertura de una hoja de cálculo de Excel
y recuperación de cierta información.
Todos el código escrito en Visual Basic de la base de datos se almacenará en módulos. Access
proporciona dos formas de crear módulos: como un objeto módulo o como parte de un objeto
formulario o informe.
Objetos de módulo
Los objetos de módulo de una base de datos son visualizados al pulsar el botón módulos de la
ventana de la base de datos. Sería necesario utilizar este tipo de objeto para definir los
procedimientos que serán utilizados desde varios formularios o informes de la aplicación. Serían
los llamados procedimientos públicos que pueden ser llamados desde cualquier parte de la
aplicación.
Para crear un nuevo módulo desde esta zona, pulsaremos el botón Nuevo situado sobre la lista
de módulos, en la ventana de la base de datos.
Módulos de formulario e informe
Para facilitar la creación de procedimientos en Visual Basic que respondan a eventos en
formularios e informes, Access proporciona un módulo asociado con cada formulario e informe.
Dentro de un módulo de este tipo, podemos crear procedimientos de evento privados para
responder a eventos, que sólo pueden ser llamados desde dentro del formulario o informe
donde se encuentran situados.
La ventana del editor de Visual Basic
Cuando abrimos un módulo en vista Diseño, Access abre el editor de Visual Basic y solicita al
editor la visualización del código.
- 82 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 12.1. Ventana Editor de Visual Basic
Variables y constantes
Además de poder utilizar código Visual Basic para trabajar con los controles de cualquier
formulario o informe abierto, podemos declarar y utilizar las variables situadas en nuestro
código para almacenar valores de forma temporal, calcular un resultado, o tratar cualquiera de
los objetos de nuestra base de datos. De este modo, en lugar de definir controles “ocultos” en
los formularios para mantener los datos que deseamos pasar de una rutina a otra, podemos
definir una variable global para que guarde ese valor.
La diferencia entre una variable y una constante es que esta última tiene un valor fijo que no
puede ser alterado mientras la aplicación está siendo ejecutada.
- 83 -
www.professionalscat.net
[email protected]
@profesionalscat
Ámbito de una constante y de una variable
El alcance de una variable o de una constante determina si la variable o constante será conocida
sólo por un procedimiento, por todos los procedimientos de un módulo o por todos los
procedimientos de la base de datos. Se pueden crear variables o constantes que pueden ser
utilizadas por cualquier procedimiento de la base de datos (alcance global). Además podemos
crear variables o constantes que solamente se apliquen a los procedimientos de un módulo o a
un único procedimiento (alcance local)
Figura 12.2. Variable de procedimiento
La variable creada en la figura anterior será visible desde cualquier procedimiento del objeto
donde se ubica, en este caso FO_Albaranes, dado que se encuentra en la parte superior fuera
de cualquier subrutina privada.
Figura 12.3. Variable local
Las variables creadas en la figura anterior, Numero y varCuentaReg, solo serán leídas desde la
rutina donde se encuentran, en este caso la rutina Form_Current (Variables locales)
- 84 -
www.professionalscat.net
[email protected]
@profesionalscat
Figura 12.4. Variables globales
La de la figura anterior, como está definida en un módulo como variable pública, podrá ser leida
desde cualquier procedimiento de la base de datos.
- 85 -
www.professionalscat.net
[email protected]
@profesionalscat
BIBLIOGRAFÍA:
- Ayuda de Microsoft Access 2003
- Running Microsoft Access 2000 – Guía Completa. Autor: John Viescas. Editorial:
McGraw Hill
- Paso a Paso – Access 2003 – Editorial: McGraw Hill
- 86 -
Descargar