Página 1 de 127
Microsoft Access 2003 - I
TABLA DE CONTENIDO
CAPITULO 1.................................................................................................................................................................4
PRESENTACIÓN.................................................................................................................................................................4
El Proceso de análisis y diseño de una base de datos.............................................................................................7
CREACIÓN DE UNA TABLA..................................................................................................................................................9
Especificación de la clave principal de una tabla.................................................................................................13
Guardando una tabla.............................................................................................................................................15
Las propiedades de los campos de una tabla........................................................................................................16
Cambiar el nombre de un campo en una tabla.....................................................................................................18
CAPITULO 2...............................................................................................................................................................19
DEFINICIÓN DEL PROYECTO DE TRABAJO.............................................................................................................................19
Creación de una tabla catálogo: ALUMNOS.......................................................................................................19
Creación de una tabla de detalle: CALIFICACIONES.........................................................................................25
Creación de una tabla de detalle: PAGOS............................................................................................................36
CAPITULO 3...............................................................................................................................................................43
OPTIMIZANDO EL DISEÑO DE LA BASE DE DATOS..................................................................................................................43
El Proceso de análisis y diseño de una base de datos...........................................................................................43
Creación de la tabla CONCEPTOS y la tabla CAJEROS.....................................................................................47
RELACIONES..................................................................................................................................................................48
Crear una relación “uno a varios”.......................................................................................................................48
Crear una relación “varios a varios”...................................................................................................................49
Crear una relación “uno a uno”..........................................................................................................................50
Establecer relaciones entre tablas........................................................................................................................51
INTEGRIDAD REFERENCIAL................................................................................................................................................53
OPCIONES DE ELIMINACIÓN Y ACTUALIZACIÓN EN CASCADA...................................................................................................55
Tipos de Combinaciones........................................................................................................................................55
CAPITULO 4...............................................................................................................................................................56
EXPORTAR DATOS Y OBJETOS DE BASES DE DATOS................................................................................................................56
Exportar tablas de una base de datos de Access a otra base de datos de Access.................................................56
Exportar una tabla o consulta de Access a una hoja de cálculo de Excel............................................................58
Exportar una tabla o consulta de Access a un archivo Texto ancho fijo..............................................................61
IMPORTAR DATOS............................................................................................................................................................64
Importar a una base de datos de Access datos procedentes de un archivo de dBase..........................................64
Importar a una base de datos de Access tablas y otros objetos procedentes de otra base de datos de Access...64
Importar a una base de datos de Access datos procedentes de una hoja de cálculo de Excel............................66
Importar a una base de datos de Access datos procedentes de un archivo de texto delimitado o de ancho fijo. 67
VINCULAR TABLAS..........................................................................................................................................................69
Para vincular una tabla de Access…...................................................................................................................69
El administrador de tablas vinculadas..................................................................................................................71
CAPITULO 5...............................................................................................................................................................73
ANALIZAR CON MS - EXCEL...........................................................................................................................................73
PUBLICAR CON MS – WORD...........................................................................................................................................74
COMBINAR CON MS-WORD............................................................................................................................................75
COMPACTAR Y REPARAR UNA BASE DE DATOS ....................................................................................................................75
ANALIZAR RENDIMIENTO..................................................................................................................................................77
ORDENAR REGISTROS......................................................................................................................................................79
BUSCAR Y REEMPLAZAR..................................................................................................................................................80
FILTROS POR SELECCIÓN..................................................................................................................................................82
FILTROS POR FORMULARIO................................................................................................................................................83
FILTROS AVANZADOS.......................................................................................................................................................84
ESPECIFICAR CRITERIOS....................................................................................................................................................85
Ordenar registros utilizando varios criterios de ordenación................................................................................86
Trabajar con fechas y horas en la fila criterios....................................................................................................87
Página 2 de 127
Microsoft Access 2003 - I
CAPITULO 6...............................................................................................................................................................89
RESUMEN DE PROPIEDADES DE CAMPOS..............................................................................................................................89
Propiedades de la ficha general............................................................................................................................89
PROPIEDADES DE LA FICHA BÚSQUEDA......................................................................................................92
CADENAS DE LONGITUD CERO Y NULOS..............................................................................................................................93
OTROS TEMAS DE INTERÉS................................................................................................................................................94
INSERCIÓN DE UN HIPERVÍNCULO EN UN CAMPO...................................................................................................................96
CAPITULO 7...............................................................................................................................................................97
INTRODUCCIÓN...............................................................................................................................................................97
CONSULTAS DE SELECCIÓN...............................................................................................................................................97
ESTABLECER LAS PROPIEDADES DE LOS CAMPOS.................................................................................................................100
Introducir criterios de selección..........................................................................................................................100
Uso del Generador de Expresiones.....................................................................................................................102
Especificación del nombre de los campos...........................................................................................................103
Ordenación de datos............................................................................................................................................103
Consultas de totales.............................................................................................................................................104
Selección de registro para formar grupos...........................................................................................................106
Selección de grupos específicos..........................................................................................................................106
Uso de parámetros en las consultas....................................................................................................................106
CAPITULO 8.............................................................................................................................................................109
CONSULTAS DE TABLAS DE REFERENCIAS CRUZADAS...........................................................................................................109
COMBINACIONES EXTERNAS............................................................................................................................................111
CREACIÓN DE UNA CONSULTA BASADA EN UNA CONSULTA ..................................................................................................113
USO DE VARIAS TABLAS EN CONSULTAS DE TOTALES..........................................................................................................113
USO DE UN ASISTENTE PARA CONSULTAS..........................................................................................................................114
LIMITACIONES EN EL USO DE CONSULTAS DE SELECCIÓN PARA ACTUALIZAR DATOS..................................................................114
Campos de una consulta que no pueden ser actualizados..................................................................................114
Personalización de las propiedades de la consulta.............................................................................................114
Consulta de la salida de una consulta.................................................................................................................115
Tratamiento de registros y valores únicos..........................................................................................................115
Otras propiedades de la consulta........................................................................................................................115
CAPITULO 9.............................................................................................................................................................116
CONSULTAS DE ACCIONES..............................................................................................................................................116
Consultas de creación de tablas..........................................................................................................................116
Consultas de datos anexados...............................................................................................................................120
Consultas de eliminación utilizando una tabla...................................................................................................123
Consultas de eliminación utilizando tablas con relación uno a varios...............................................................124
Consultas de actualización..................................................................................................................................125
Diseño de Consultas utilizando SQL...................................................................................................................126
Consultas de unión..............................................................................................................................................126
Página 3 de 127
Microsoft Access 2003 - I
CAPITULO 1
Presentación
Una base de datos de Access es un conjunto de elementos que permiten almacenar información
relacionada con un tema o propósito determinado. Además de almacenar información, una base
de datos de Access también cuenta con las herramientas necesarias para acceder a la información
a través de la pantalla o impresa en papel. Además, Access cuenta con herramientas para recabar
y publicar información a través del Web.
Para administrar los datos y todas las operaciones que hacemos con ellos, Access utiliza
elementos llamados objetos; los objetos que utiliza Access son Tablas, Consultas, Formularios,
Páginas, Informes, Macros y Módulos.
En este Curso abordaremos de manera amplia la creación y manejo de tablas así como de las
consultas. El uso de formularios e informes se aborda utilizando los asistentes y las técnicas
básicas para la modificación y adecuación de dichos formularios e informes a nuestras
necesidades. El conocimiento profundo de formularios, informes, páginas y macros se reservan
para el siguiente nivel de Access (Middle), mientras que el manejo del sistema de programación
Visual Basic (Módulos) se aborda en el tercer nivel.
Página 4 de 127
Microsoft Access 2003 - I
3 Haga clic en
Base de datos en
blanco…
4 Indique la
carpeta en la cual
guardará el archivo
de base de datos.
5 Escriba el nombre de la
base de datos. 6 Haga clic en
crear.
Al crear un archivo de Base de datos de Access, se crea un archivo con extensión .mdb
Página 5 de 127
Microsoft Access 2003 - I
Access Ofrece una gran variedad de opciones para simplificar el proceso de creación de bases de
datos.
• Puede encontrar un punto de partida adecuado para cada uso, desde bases de
datos listas para usar, hasta opciones avanzadas de cliente-servidor que permiten a los
programadores de bases de datos habilitar el acceso a las bases de datos corporativas como lo
es Microsoft SQL Server.
• Puede crear una base de datos en blanco lo cual permite mayor flexibilidad, pero
necesita definir todos los elementos de la base de datos, como tablas, formularios y otros
objetos por separado.
• El asistente para base de datos en blanco crea en una sola operación las tablas,
formularios e informes necesarios para el tipo de base de datos que elija. Es posible modificarla
en cualquier momento una vez creada. La ficha Base de Datos podrá crear bases de datos
para controlar el inventario de un negocio, mantener una lista de gastos o administrar los
contactos.
IMPORTANTE: Considere crear una carpeta para guardar en ella toda la información del proyecto
que se dispone a crear (Archivo de base de datos, archivos de ayuda, iconos, archivos de texto,
etc.). Además, asigne un nombre descriptivo para el archivo de base de datos que refleje el
propósito o al menos de una idea del propósito de dicha base de datos.
Página 6 de 127
Microsoft Access 2003 - I
Muy bien. Ya sabemos cómo crear un archivo de base de datos de Access pero, ¿Para qué
queremos una base de datos?
En el Proceso del desarrollo de una base de datos de Access, incluso antes de sentarnos frente a
la PC, debemos considerar aspectos que tienen que ver con la planeación y diseño de la base de
datos. Aspectos como los siguientes:
Necesitamos un programa
“sencillito” para llevar el
control del mantenimiento
preventivo y correctivo a
nuestras naves espaciales.
¿Tardará mucho?
Control Escolar
Kardex Materias
Recibos Conceptos
de pago de pago
Página 7 de 127
Microsoft Access 2003 - I
3. ¿Cuáles son los datos que interesan para cada tema? Considere como
ejemplo una base de datos para el control escolar de una institución educativa. Un tema
relacionado con el objetivo para esta base de datos es Alumnos. Si debemos almacenar la
información relacionada con los alumnos entonces el tema Alumnos se convertirá en una Tabla
de la base de datos pero, ¿Cuáles son los datos que debemos almacenar o que nos interese
almacenar? Las tablas son los objetos de una base de datos Access en donde se almacena la
información. La información que se almacena en una tabla se organiza en elementos llamados
campos. Cada campo almacena una categoría diferente de información. En nuestro ejemplo,
supongamos que deseamos almacenar en nuestra base de datos información relacionada con
los alumnos, información como por ejemplo la clave escolar del alumno, su nombre, su
dirección, su teléfono, la carrera en que está inscrito, la fecha de ingreso y su fecha de
nacimiento. Para hacer lo anterior debemos crear una tabla que contenga 7 campos, uno por
cada dato que deseamos registrar de cada alumno.
Por otro lado, otro tema relacionado con el control escolar de nuestro ejemplo puede ser el
kardex de cada alumno. Si la información requerida no se debe almacenar sino más bien, se
supone que ya debe estar almacenada y solamente se requiere extraer de la base de datos y
mostrarla en pantalla, este tema podría ser un Formulario o una Página mientras que si la
información deberá obtenerse en papel impreso, entonces este tema se convertiría en un
Informe dentro de la base de datos.
Tabla Productos
Informe de
productos
facturados por
Consulta cliente.
de
Tabla Clientes productos
Formulario
Facturados
para consulta
por cliente
en pantalla de
productos
Tabla Facturas facturados
por cliente
Página 8 de 127
Microsoft Access 2003 - I
4. ¿Qué tipo de dato se manejara para cada campo? El dato Clave escolar
puede ser numérico o una combinación de números y letras, o sea, puede ser de tipo Texto. El
campo nombre sólo puede ser de tipo Texto mientras que el dato Fecha de Ingreso es un dato
que es una fecha precisamente. Algunos otros datos pueden representar valores en Moneda,
Valores lógicos (verdadero/falso, Sí/No). Todo esto significa que al crear una tabla se deben
considerar no solamente los campos de la tabla a crear sino también los tipos de datos que
almacenará cada uno de los campos de la tabla.
1 La clave 4 La existencia
puede ser debe ser de tipo
numérica o de numérico
tipo texto. (puede incluir o
no decimales).
5. ¿Cómo se relaciona un tema con otro? Cuando Existe más de una tabla se
debe indicar al Access la manera que se relaciona un tema con otro, es decir, cómo se
relaciona una tabla con otra. Esto es tan importante que se dedicará todo un capítulo a este
tema.
Página 9 de 127
Microsoft Access 2003 - I
1 En la
ventana Base
de datos
seleccione
Tablas.
2 Haga doble
clic en Crear
una tabla en
vista de Diseño.
Página 10 de 127
Microsoft Access 2003 - I
3 Escriba los nombres de los campos, procurando que sean nombres descriptivos.
4 Seleccione el tipo de datos que almacenará el
campo.
Página 11 de 127
Microsoft Access 2003 - I
IMPORTANTE: Al decidir los campos para una tabla NO incluya campos calculados. Trate de
dividir la información en sus partes más pequeñas, por ejemplo, un campo para el nombre y otro
para los apellidos (en un momento dado incluso pudiera haber un campo para el apellido paterno y
otro campo para el apellido materno), no obstante tampoco exagere, por ejemplo dividiendo un
campo de fecha en tres campos: uno para el día, otro para el mes, y otro para el año, a menos que
sea absolutamente indispensable. Igualmente importante es considerar datos de tipo numérico
solamente aquellos que vaya utilizar para realizar operaciones de números (sumas, restas,
multiplicaciones, etc.).
Página 12 de 127
Microsoft Access 2003 - I
En general, podemos diferenciar tres tipos de tablas de acuerdo al tipo de información que se
almacena en ellas, a saber:
• Tablas de catálogo.
• Tablas de transacciones (también llamadas tablas de detalle o de Movimientos).
• Tablas de datos históricos.
Las tablas de catálogo generalmente contiene información que se llama precisamente “Información
de catálogo”. Este tipo de tablas normalmente tiene muy poco movimiento, es decir, es información
que no sufre demasiados cambios. Ejemplos podrían ser un catálogo de productos, un catálogo de
clientes, un catálogo de alumnos o un catálogo de proveedores los cuales, una vez que se
alimentan ocasionalmente se accede a ellas para modificar algún dato de un producto, proveedor,
alumno o cliente.
Es clásico dentro de las tablas de catálogo el identificar un registro de otro de manera muy precisa.
Esto es, si hablamos de las tablas de clientes, será necesario diferenciar a un cliente de otro para
lo cual les asignamos un número o clave de cliente distinto; es entonces cuando hablamos de la
Clave principal de la tabla. La Clave principal de una tabla es aquel campo o combinación de
campos que nos permiten identificar de manera única un registro de otro. Lo anterior permite
que Access controle que no sea posible registrar a dos clientes con el mismo número o con la
misma clave ya que esto no está permitido.
Cuando decimos que una clave principal puede ser una combinación de campos piense en lo
siguiente: Imagine que nuestra empresa tiene su oficina matriz en San Luis Potosí y una sucursal
en Querétaro. Si cada oficina lleva la numeración de sus clientes a partir del número uno, quiazá
haya un cliente uno en San Luis Potosí y un cliente uno en la sucursal de Querétaro. Si la
información del catálogo de clientes se maneja dentro de la red de la empresa en una misma base
de datos entonces quiere decir que existe una tabla única en donde se almacena dicha información
y quiere decir también que necesitamos diferenciar a cada cliente no solo tomando en cuenta su
número de cliente sino también la oficina de la que depende; entonces podría formarse una clave
principal para la tabla de clientes que incluyera los campos Oficina y Número.
Página 13 de 127
Microsoft Access 2003 - I
Para el caso de una clave principal compuesta como la del ejemplo descrito antes…
Otra opción para crear una tabla puede ser a través de un asistente o bien directamente
introduciendo datos.
El asistente para la creación de tablas (contiene dos categorías: Negocios y Personal) incluye una
serie de tablas predeterminadas. Puede seleccionar alguna de estas tablas y ajustarla a sus
necesidades. Esta es una manera rápida de generar una tabla lista para utilizarse. Si lo de sea,
pruebe estas opciones y analice lo que el asistente crea.
Página 14 de 127
Microsoft Access 2003 - I
Una vez indicados los nombres de los campos de la tabla, los tipos de datos que almacenará cada
campo y la clave principal de la tabla, podemos guardarla. Procure asignar un nombre descriptivo a
la tabla que refleje el contenido de la misma. Los nombres de los objetos de Microsoft Access
pueden ser hasta de 64 caracteres de longitud.
3 Acepte.
Cuando cree una tabla de transacciones y desee asignar una clave principal considere agregar a
la tabla un campo llamado “Id de nombre de tabla” de tipo auto numérico y asigne este campo
como llave principal dentro de la tabla. Esto permite entre otras cosas, mantener un registro
cronológico de la grabación de los registros dentro de la tabla lo cual puede ser importante. Si toma
en cuenta que se recomienda que todas las tablas tengan una clave principal para facilitarle a
Access el agilizar las búsquedas, esta es una muy buena opción a la hora de crear tablas de
transacciones.
Página 15 de 127
Microsoft Access 2003 - I
Las propiedades de campos son los atributos con nombre de los campos de una tabla. Permiten
especificar las funciones de un campo y personalizar el comportamiento y el aspecto de cualquier
campo. Abra una tabla en la vista diseño para examinar y cambiar cualquier propiedad de un
campo existente.
1 Seleccione un campo.
La siguiente tabla muestra ejemplos de algunas propiedades de campo. Observe que la lista no
está completa; por ejemplo, hay once propiedades para un campo de texto, diez para campos
numéricos, etc., y así para otros ocho tipos de campo. La creación automatizada de tablas que
efectúa el asistente para tablas elige la configuración de las propiedades de la tabla, pero se puede
cambiar la configuración en la vista de Diseño de la tabla.
Página 16 de 127
Microsoft Access 2003 - I
Página 17 de 127
Microsoft Access 2003 - I
El uso de una máscara de entrada permite asegurarnos que los datos introducidos se ajusten a un
“modelo” o “patrón” determinado permitiendo eliminar ciertos tipos de errores de captura que se
producen cuando los datos no se escriben correctamente.
IMPORTANTE: Para obtener información completa acerca de cada una de las propiedades de un
campo de una tabla, abra la tabla en modo Diseño, seleccione un campo, colóquese en la
propiedad que desee y presione la tecla F1, esto le dará acceso a la ayuda en línea de Access
Puede cambiar el nombre de un campo en cualquier momento sin que afecte a los datos que
contiene. Access corrige automáticamente los efectos secundarios comunes que puedan ocurrir
cuando se modifica el nombre de un campo.
En Access 97 y versiones anteriores, si se cambia el nombre de un campo en una tabla, los objetos
de formularios e informes basados en dicho campo dejarán de mostrar los datos del mismo. A
partir de la versión 2000, Access corrige automáticamente las consecuencias indirectas que se
producen cuando se cambia el nombre de formularios, informes, tablas, consultas, campos,
cuadros de texto u otros controles en una base de datos. Esta función se denomina Auto
corrección de nombres.
Cada vez que se abre un formulario u otro objeto, Access busca y corrige automáticamente las
discrepancias entre el formulario y los demás objetos de los que depende el objeto.
De forma predeterminada, la función de auto corrección de nombres está habilitada en las bases
de datos creadas a partir de Access 2000. Sin embargo, en las bases de datos convertidas a
Access 2000 se debe habilitar dicha función.
Página 18 de 127
Microsoft Access 2003 - I
CAPITULO 2
Definición del proyecto de trabajo
En este curso vamos a desarrollar una aplicación para el Control Escolar de una institución
educativa (se toma este ejemplo por que consideramos que todos de alguna manera hemos estado
relacionados con una institución de este tipo y hemos vivido la experiencia que nos permite
entender los términos en los cuales estemos hablando, no obstante el usuario podrá hallar similitud
con la aplicación particular que desee desarrollar). Las funciones principales que debe realizar
nuestra aplicación son: permitir un registro de los alumnos, sus datos generales, sus calificaciones
y los pagos que realicen, así como reportes y consultas por pantalla que puedan obtenerse de la
información almacenada. El análisis de esta aplicación será proporcionado por el instructor quien
hará las funciones de analista de sistemas para cualquier duda o situación no prevista.
Para empezar, cree una carpeta con su nombre dentro del disco duro y dentro de ella cree
otra carpeta llamada CONTROL ESCOLAR. Dentro de la carpeta llamada CONTROL
ESCOLAR cree un archivo de base de datos de Access llamado Control Escolar
PROGRAMATICA.
Dentro de nuestra base de datos Control Escolar PROGRAMATICA vamos a crear una tabla de
catálogo con la siguiente información.
Tabla: ALUMNOS
Nombre del campo Tipo de datos Tamaño
Clave del alumno* Texto 7
Nombre Texto 20
Apellidos Texto 30
Domicilio Texto 50
Ciudad Texto 20
Estado Texto 20
Código Postal Texto 5
Clave de larga distancia Texto 3
Teléfono Texto 20
e-mail Texto 30
Fecha de nacimiento Fecha / Hora
Masculino Sí / No
Carrera Texto 30
Fecha de ingreso Fecha / Hora
Cuota de inscripción Moneda
Observaciones Memo
Fotografía Objeto OLE
Página 19 de 127
Microsoft Access 2003 - I
Abra tabla ALUMNOS en su vista Hoja de datos y capture los primeros 4 registros con la
información de prueba que se encuentra a continuación. Después, cierre la tabla y cree un
auto formulario basado en esta tabla y capture los 4 siguientes registros con más
información de prueba. El instructor le indicará la manera más sencilla de crear un auto
formulario basado en una tabla.
Información de prueba:
Página 20 de 127
Microsoft Access 2003 - I
1 2
FICHA DE INGRESO FICHA DE INGRESO
Clave 9818 Clave 9802
Nombre(s) Armando Nombre(s) Rocío
Apellidos Peláez Gómez Apellidos Estrada Alcántara
Aldama 125, Centro
Domicilio Domicilio Prolongación 1400, Col Viveros
3
FICHA DE INGRESO
4
Clave 9918 FICHA DE INGRESO
Nombre(s) Mariana Clave 9950
Apellidos Robles Bernal Nombre(s) Francisco
Apellidos Pineda Oyarzún
Domicilio Himalaya 1420, Col. Bella Vista
Av. Del Parque Nº. 35
Domicilio
Ciudad San Luis Potosí
Estado S.L.P. Ciudad San Luis Potosí
C.P. 78209 Estado S.L.P.
Clave LADA 4 C.P. 78081
Teléfono 817.30.42 Clave LADA 4
e-mail rober@hotmail.com Teléfono 813.00.47
F. Nacimiento 20 de Septiembre de 1973 e-mail oyarzun@yahoo.com
Sexo Femenino F. Nacimiento 5 de Abril de 1968
Carrera Contador Público Sexo Masculino
F. Ingreso 19 de Enero de 1999 Carrera Administración de Empresas
$ Inscripción $ 900.00 F. Ingreso 19 de Enero de 1999
Es el Mejor Promedio de su $ Inscripción $ 900.00
Observaciones
generación.
Observaciones
Página 21 de 127
Microsoft Access 2003 - I
Página 22 de 127
Microsoft Access 2003 - I
Página 23 de 127
Microsoft Access 2003 - I
5 6
FICHA DE REGISTRO FICHA DE REGISTRO
Clave 9845 Clave 9806
Nombre(s) José Luis Nombre(s) Alma
Apellidos Gómez Fernández Apellidos Hernández Cervantes
Av. Himno Nacional 1900 Independencia 457, Centro
Domicilio Domicilio
7 8
FICHA DE REGISTRO FICHA DE REGISTRO
Clave 9874 Clave 9920
Nombre(s) Luis Alberto Nombre(s) José Alejandro
Apellidos Luna Marroquín Apellidos Zapata Lara
Valladolid 2853, Col. Aviación
Domicilio Calle Salazar 1222. Col Industrial Domicilio
Página 24 de 127
Microsoft Access 2003 - I
Ahora vamos a crear una tabla para registrar las calificaciones de los alumnos. La tabla de
CALIFICACIONES es un ejemplo muy claro de lo que se considera una tabla de detalle,
considerando que en esta tabla se registrarán las calificaciones que vayan obteniendo los alumnos
durante el tiempo, es decir, cada vez que un alumno curse una materia se registrará en esta tabla
la calificación que obtuvo en esa materia: entonces sabemos que para un alumno cualquiera puede
haber varios registros suyos en esta tabla, o sea, un registro para cada calificación-materia que
halla cursado.
Lo anterior nos permite decir que los temas ALUMNOS y CALIFICACIONES son temas que están
relacionados ya que, la tabla CALIFICACIONES contiene precisamente las calificaciones de los
ALUMNOS.
ALUMNOS 1 ∞ CALIFICACIONES
Tabla: CALIFICACIONES
Nombre del campo Tipo de datos Tamaño
Clave del alumno Texto 7
Materia Texto 20
Calificación Numérico Entero
Instructor Texto 30
Del Fecha / Hora
Al Fecha / Hora
Observaciones Memo
Id de Calificaciones Auto Numérico
Página 25 de 127
Microsoft Access 2003 - I
Observe que ambas tablas (ALUMNOS y CALIFICACIONES) existe un campo común. El campo
Clave del alumno. Cuando queremos relacionar dos tablas debe existir al menos un campo común
en ambas tablas. Considerando que normalmente siempre creamos primero la tabla de catálogo
entonces podemos decir que al crear una tabla de detalle que se relacionará con una tabla
catálogo, debemos agregar a la tabla de detalle el campo o campos que forman la clave
principal en la tabla catálogo (de preferencia utilizando el Asistente para búsquedas). Este
campo o campos son los que permitirán relacionar los registros de la tabla de detalle con los
registros de la tabla catálogo.
Página 26 de 127
Microsoft Access 2003 - I
Cuando creamos una tabla de detalle que se relacionará con alguna tabla de catálogo debemos
agregar a la tabla de detalle el campo o campos que forman la clave principal en la tabla catálogo.
Para hacer esto hacemos uso del Asistente para búsquedas que proporciona Access.
Página 27 de 127
Microsoft Access 2003 - I
3 Seleccione la tabla ALUMNOS y haga clic en el botón Siguiente (En este caso, la tabla
calificaciones que estamos creando se relacionará con la tabla ALUMNOS).
4 Seleccione un campo haciendo clic en él, después haga clic en el botón > para seleccionar
dicho campo. Siguiendo este método, seleccione los campos que desea que aparezcan en la
columna de búsqueda. Después haga clic en Siguiente.
Página 28 de 127
Microsoft Access 2003 - I
5 Seleccione la Clave del alumno para ordenarlo Ascendentemente y haga clic en Siguiente.
Nuevo en
Access
2003
6 Desactive la casilla Ocultar la columna clave, ajuste el ancho de las columnas y haga clic en
Siguiente.
Página 29 de 127
Microsoft Access 2003 - I
Página 30 de 127
Microsoft Access 2003 - I
11 Haga clic en el botón No. Posteriormente Usted creará su propia Clave principal para esta
tabla.
Haga clic en la ficha Búsqueda de las propiedades del campo Clave del alumno y analice cada
propiedad (Estas fueron creadas por el Asistente para búsquedas).
Página 31 de 127
Microsoft Access 2003 - I
Si quiere ver como funciona la columna de búsqueda que ha creado, cambie a la vista Hoja de datos de la
tabla y abra la lista desplegable.
Lo que hizo fue crear una lista desplegable para que al capturar las calificaciones sea posible seleccionar de
esta lista la clave del alumno del que se vaya a registrar una calificación, esto en lugar de tener que escribirla
(por supuesto que también puede escribir la clave si así lo desea). La lista desplegable muestra los registros
actualizados de los alumnos, es decir, muestra la lista de registros que en ese momento haya en la tabla
ALUMNOS.
Regrese a la vista Diseño de la tabla y agregue los demás campos según la página 19 de este manual.
Asigne la Clave principal, guarde y cierre la tabla.
Ahora puede crear un auto formulario basado en la tabla CALIFICACIONES y capture la información que se
anexa en las listas de las siguientes páginas.
Página 32 de 127
Microsoft Access 2003 - I
PROGRAMATICA
Materia Instructor
MICROSOFT WINDOWS 98 JULIETA ESTRADA
Periodo
Del: Al:
2 DE ENERO DE 1998 15 DE ENERO DE 1998
Calificación
No. Clave del alumno Nombre En número En letra
1 9818 Armando Peláez Gómez 90 Noventa
2 9802 Rocío Estrada Alcántara 85 Ochenta y cinco
3 9845 José Luís Gómez Hernández 85 Ochenta y cinco
4 9920 José Alejandro Zapata Lara 70 Setenta
5 9950 Francisco Pineda Oyarzún 90 Noventa
6 9874 Luis Alberto Luna Marroquín 100 Cien
7
8
PROGRAMATICA
Materia Instructor
MICROSOFT WORD 97 JUAN URBINA
Periodo
Del: Al:
15 DE MARZO DE 1998 10 DE ABRIL DE 1998
Calificación
No. Clave del alumno Nombre En número En letra
1 9806 Alma Hernández Cervantes 100 Cien
2 9802 Rocío Estrada Alcántara 70 Setenta
3 9918 Mariana Robles Bernal 90 Noventa
4 9920 José Alejandro Zapata Lara 80 Ochenta
5 9950 Francisco Pineda Oyarzún 60 Sesenta
6 9874 Luís Alberto Luna Marroquín 85 Ochenta y cinco
7 9818 Armando Peláez Gómez 90 Noventa
8 9845 José Luis Hernández Gómez 65 Setenta y cinco
Página 33 de 127
Microsoft Access 2003 - I
PROGRAMATICA
Materia Instructor
MICROSOFT EXCEL 97 ANA MARIA MORA
Periodo
Del: Al:
20 DE JUNIO DE 1998 12 DE AGOSTO DE1999
Calificación
No. Clave del alumno Nombre En número En letra
1 9806 Alma Hernández Cervantes 75 Setenta y cinco
2 9802 Rocío Estrada Alcántara 100 Cien
3 9918 Mariana Robles Bernal 80 Ochenta
4 9920 José Alejandro Zapata Lara 80 Ochenta
5 9950 Francisco Pineda Oyarzún 90 Noventa
6 9874 Luis Alberto Luna Marroquín 70 Setenta
7
8
PROGRAMATICA
Materia Instructor
MICROSOFT POWER POINT 97 JULIETA ESTRADA
Periodo
Del: Al:
15 DE MARZO DE 1998 4 DE ABRIL DE1998
Calificación
No. Clave del alumno Nombre En número En letra
1 9806 Alma Hernández Cervantes 75 Setenta y cinco
2 9920 José Alejandro Zapata Lara 85 Ochenta y cinco
3 9874 Luis Alberto Luna Marroquín 90 Noventa
4 9818 Armando Peláez Gómez 60 Sesenta
5 9845 José Luís Gómez Hernández 100 Cien
6
7
8
Página 34 de 127
Microsoft Access 2003 - I
PROGRAMATICA
Materia Instructor
MICROSOFT ACCESS 97 JUAN URBINA
Periodo
Del: Al:
5 DE AGOSTO DE 1998 12 DE OCTUBRE DE 1998
Calificación
No. Clave del alumno Nombre En número En letra
1 9808 Alma Hernández Cervantes 100 Cien
2 9802 Rocío Estrada Alcántara 80 Ochenta
3 9918 Mariana Robles Bernal 50 Cincuenta
4
5
6
7
8
PROGRAMATICA
Materia Instructor
MICROSOFT ACCESS 97 ANA MARIA MORA
Periodo
Del: Al:
5 DE AGOSTO DE 1998 12 DE OCTUBRE DE 1998
Calificación
No. Clave del alumno Nombre En número En letra
1 9920 José Alejandro Zapata Lara 75 Setenta y cinco
2 9950 Francisco Pineda Oyarzún 80 Ochenta
3 9874 Luís Alberto Luna Marroquín 100 Cien
4 9818 Armando Peláez Gómez 60 Sesenta
5 9845 José Luis Hernández Gómez 70 Setenta
6
7
8
Página 35 de 127
Microsoft Access 2003 - I
Una vez capturadas las calificaciones, abra la tabla ALUMNOS en su vista Hoja de datos.
Cuando hace clic en la casilla + del registro de un alumno, Access muestra en una Hoja
secundaria la información relacionada con ese alumno. En este caso, Access muestra las
calificaciones registradas para ese alumno en la tabla CALIFICACIONES. Si desea ocultar la Hoja
secundaria, haga clic en la casilla –
Una vez creada la tabla de calificaciones, vamos a crear la tabla de pagos. Proceda de manera
similar a la utilizada anteriormente para crear la tabla de pagos la cual tiene la siguiente estructura:
Tabla: PAGOS
Nombre del campo Tipo de datos Tamaño
Clave del alumno Texto 7
Fecha de Pago Fecha/Hora
Concepto del pago Texto 30
Importe Moneda
Clave del cajero Texto 5
Observaciones Memo
Id de pagos Auto numérico
Página 36 de 127
Microsoft Access 2003 - I
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
Página 37 de 127
Microsoft Access 2003 - I
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
Página 38 de 127
Microsoft Access 2003 - I
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
Página 39 de 127
Microsoft Access 2003 - I
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
Página 40 de 127
Microsoft Access 2003 - I
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
Página 41 de 127
Microsoft Access 2003 - I
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
PROGRAMATICA
Registro de pagos
Página 42 de 127
Microsoft Access 2003 - I
CAPITULO 3
Optimizando el diseño de la base de datos
Abra la tabla CALIFICACIONES en su vista Hoja de datos. Observe las columnas de los campos
Instructor y Materia. Analice como fue que capturó la información.
Cada vez que capturó los datos de un registro tuvo que escribir el nombre del instructor y el nombre
de la materia. En el mejor de los casos utilizó el método de teclado ctrl. + " para repetir el dato
anterior. Pero no solamente se trata de ahorrar tiempo y trabajo durante la captura. El problema de
un diseño de este tipo es que al tener que escribir cada vez el nombre de la materia y el nombre del
instructor, por lo que está repitiendo estos datos con el consecuente desperdicio de espacio en
disco al tener muchas veces el mismo dato. Además, esto puede provocar inconsistencia en la
información ya que si desea modificar el nombre de un instructor o el nombre de una materia
tendría que hacerlo en todos los registros en donde se encuentre el dato a modificar.
Por otro lado, en algunos casos, si en lugar de capturar el nombre del instructor como por ejemplo
ANA MARIA MORA, captura solamente ANA MORA, en una búsqueda de los alumnos que han
cursado materias con ANA MARIA MORA podrían no aparecer todos los registros que sean
correctos (Access considera ANA MORA y ANA MARIA MORA como valores diferentes).
El modelo relacional de bases de datos recomienda crear tablas en las cuales no se repitan datos,
o al menos se repitan lo menos posible. ¿No sería mejor tener un catalogo de instructores y un
catalogo de materias de modo que al capturar las calificaciones pudiéramos seleccionar de una
lista desplegable el instructor o la materia? . Algo similar al caso de la clave del alumno; al capturar
calificaciones puede seleccionar el alumno de la lista desplegable la cual muestra la relación de
alumnos que en ese momento están registrados en la tabla ALUMNOS.
Pero también ganamos en que los datos de cada instructor y los datos de las materias se guardan
en tablas independientes y solo una vez cada uno, logrando con esto optimizar el espacio que
ocupa la información en el disco de nuestra PC y haciendo más sencillo modificar los datos ya que
se hace una sola vez. Aparte, podemos agregar algunos otros datos importantes o
complementarios a las tablas INSTRUCTORES y MATERIAS para tener mayor información de
estos temas.
Antes de iniciar la práctica de este capitulo, le recomendamos hacer una copia de su base de
datos.
1 En los dos primero cuadros de diálogo que muestra el asistente haga clic en el botón Siguiente.
Página 43 de 127
Microsoft Access 2003 - I
4 Arrastre el campo
5 El asistente creará una
Instructor de la tabla Tabla1
tabla llamada Tabla2.
y suéltelo fuera de ella.
Página 44 de 127
Microsoft Access 2003 - I
6 Y le pedirá el nombre para esta nueva tabla. Escriba el nombre que tendrá la nueva tabla
(INSTRUCTORES) y acepte.
Página 45 de 127
Microsoft Access 2003 - I
Ahora tiene una tabla Ilamada CALIFICACIONES y otra tabla Ilamada CALIFICACIONES2. Elimine
La tabla Ilamada CALIFICACIONES. A continuación, a la tabla Ilamada CALIFICACIONES2
asígnele el nombre CALIFICACIONES.
Por otro lado, el formulario CALIFICACIONES ya no sirve así como está; por lo tanto debemos
eliminar el formulario existente y crear un nuevo auto formulario basado en la nueva estructura de
la tabla CALIFICACIONES.
Si una vez creado el nuevo auto formulario no le gusta el orden en el que aparecen los campos
dentro del formulario, puede modificar el diseño de la tabla CALIFICACIONES para adaptar el
orden de los campos a su preferencia y después crear el auto formulario.
IMPORTANTE: Observe que el Campo Clave del alumno NO es un cuadro combinado en la nueva
tabla CALIFICACIONES. Deberá utilizar el Asistente para búsquedas para volver a crear la relación
entre la tabla ALUMNOS y la tabla CALIFICACIONES.
Aproveche para crear un auto formulario basado en la tabla INSTRUCTORES y otro auto
formulario basado en la tabla MATERIAS para poder capturar información en dichas tablas.
Página 46 de 127
Microsoft Access 2003 - I
Si observa lo que hace el asistente al crear los auto formularios anteriores tendrá una primera idea
de lo que se conoce como Formulario principal y Subformulario.
Página 47 de 127
Microsoft Access 2003 - I
Relaciones
Ahora que ha dividido la información en tablas, necesita una forma de indicar al Access como debe
recuperar conjuntamente dicha información de forma significativa. Quizá un formulario o un reporte
necesiten mostrar información que se encuentra en diferentes tablas.
Access es un sistema de bases de datos relacionales, lo que significa que es posible almacenar
datos relacionados en distintas tablas de la base de datos. A continuación, debe definir relaciones
entre las tablas, de este modo, Access utilizará dichas relaciones para encontrar información
asociada entre si, pero almacenada en diferentes tablas.
Por ejemplo, suponga que desea telefonear a un empleado y hacerle ciertas preguntas sobre una
venta que él hizo. Los números de teléfono de los empleados están almacenados en la tabla
Empleados y las ventas están almacenadas en la tabla Pedidos. Cuando indique al Access la venta
sobre la que desea información, Access podrá buscar el número de teléfono basándose en la
relación existente entre las tablas. Esto es posible ya que ID de empleado, la clave principal de la
tabla Empleados, es también un campo de la tabla Pedidos. En la terminología de bases de datos,
el campo ID de empleado incluido en la tabla Pedidos se denomina clave externa, ya que es una
clave principal procedente de otra tabla distinta.
Así, para establecer una relación entre dos tablas, tabla A y tabla B, debe agregar la clave principal
de una tabla a la otra, de forma que dicha clave aparezca en ambas tablas (Esto lo puede hacer
utilizando el Asistente para búsquedas). Para establecer correctamente la relación, es preciso
determinar primero la naturaleza de la relación. Hay tres tipos de relaciones entre tablas:
En el resto de este capítulo se presenta un ejemplo de cada tipo de relación y se explica como
diseñar las tablas de forma que Access pueda asociar correctamente los datos.
La relación "uno a varios" es el tipo más frecuente en bases de datos relacionales. En una relación
de este tipo, un registro de la tabla A puede tener más de un registro coincidente en la tabla B, pero
un registro de la tabla B tiene como máximo un registro coincidente en la tabla A.
Por ejemplo, las tablas ALUMNOS y CALIFICACIONES de nuestra base de datos Control Escolar
PROGRAMATICA tienen una relación "uno a varios". También es el caso de las tablas ALUMNOS
y PAGOS, y las tablas INSTRUCTORES y CALIFICACIONES.
1 ∞
ALUMNOS
CALIFICACIONES
Para establecer la relación, agregue el campo o campos que componen la clave principal del
extremo "uno" de la relación a la tabla situada en el extremo "varios" de la relación.
Página 48 de 127
Microsoft Access 2003 - I
En una relación "varios a varios", un registro de la tabla A puede tener más de un registro
coincidente en la tabla B, y un registro de la tabla B también puede tener más de un registro
coincidente en la tabla A. Este tipo de relaciones requiere cambiar el diseño de la base de datos
antes de poder especificar correctamente la relación al Access.
Para detectar las relaciones "varios a varios" entre las tablas, es importante que observe la relación
en los dos sentidos. Por ejemplo, examine la relación entre PRODUCTOS y FACTURAS. Una
factura puede incluir más de un producto. Así, para cada registro de la tabla FACTURAS puede
haber varios registros de la tabla PRODUCTOS. Pero esto no es todo; cada producto puede
aparecer en varias facturas. Por ello, por cada registro de la tabla PRODUCTOS puede haber
varios registros en la tabla FACTURAS.
Los temas de las dos tablas, facturas y productos, tienen una relación "varios a varios", lo cual
plantea un problema en el diseño de la base de datos. Para entender el problema, imagine lo que
ocurriría si intentara establecer la relación entre las dos tablas agregando el campo Id de producto
a la tabla FACTURAS. Para tener más de un producto en una sola factura necesita más de un
registro en la tabla FACTURAS, uno por cada producto. De esta forma repetiría una y otra vez la
información sobre facturas para cada registro relativo a una única factura; este diseño, además de
ser ineficiente, produciría datos inexactos. Tendría el mismo problema si incluyera el campo Id de
factura en la tabla PRODUCTOS; tendría más de un registro en la tabla PRODUCTOS para cada
producto. ¿Cómo se resuelve este problema?
La respuesta es crear una tercera tabla que divida la relación "varios a varios" en dos relaciones
"uno a varios". En esta tercera tabla se incluiría la clave principal de cada una de las dos tablas
anteriores.
Clave principal de la Clave principal de la
Tabla FACTURAS Tabla PRODUCTOS
producto puede aparecer en varias facturas distintas. Pero conjuntamente, estos dos campos
siempre producen un valor único para cada registro.
En la base de datos Control Escolar PROGRAMATICA existen varias tablas en las cuales se
presentan relaciones "varios a varios". Por ejemplo, la relación entre las tablas ALUMNOS y
MATERIAS. Un alumno puede cursar varias materias y una materia puede ser cursada por varios
alumnos distintos.
En una relación "uno a uno", un registro de la tabla A no puede tener más de un registro
coincidente en la tabla B, y un registro de la tabla B no puede tener más de un registro coincidente
en la tabla A. Este tipo de relaciones es poco frecuente y puede requerir ciertos cambios en el
diseño de la base de datos.
Las relaciones "uno a uno" entre las tablas son poco frecuentes ya que, en muchos casos, la
información de las dos tablas podría combinarse en una sola tabla. Por ejemplo, suponga que ha
creado una tabla JUGADORES DE PING-PONG para hacer un seguimiento de la información
relativa a la jornada de recolección de fondos para el Club de Jugadores de Ping-Pong de su
empresa. Puesto que todos los jugadores de ping-pong son empleados de la empresa, esta tabla
tiene una relación "uno a uno" con la tabla EMPLEADOS de su empresa.
Tabla: Empleados
Id de empleado Nombre Apellidos Puesto Fecha Nacimiento
1 David Rosas Almada Vendedor 08/12/68
2 Margarita Lara Méndez Subgerente Financiero 15/04/64
3 Juan Antonio Rodríguez Gómez Vendedor 10/02/70
4 Alma Rosa Zapata Trejo Gerente de División 17/09/67
Cuando detecte la necesidad de establecer una relación "uno a uno" en su base de datos, piense si
puede incluir la información en una sola tabla. Si no desea hacerlo por alguna razón, haga lo
siguiente para establecer dicha relación:
• Si las dos tablas son del mismo tema, probablemente podrá establecer la
relación utilizando el mismo campo de clave principal en ambas tablas.
Página 50 de 127
Microsoft Access 2003 - I
• Si las dos tablas son de distintos temas y tienen distintas claves principales, elija
una de las tablas (cualquiera de ellas) a incluya su campo de clave principal en la
otra tabla, como clave externa
Puesto que Access es una base de datos relacional, permite utilizar simultáneamente datos de más
de una tabla o consulta. Si su base de datos contiene tablas con datos relacionados, puede definir
las relaciones en la base de datos. Access utiliza las relaciones para:
• Crear combinaciones en nuevas consultas Cuando cree una consulta y le agregue tablas
relacionadas o consultas para las que haya especificado una relación, Access creará
automáticamente combinaciones para relacionar los datos de la consulta.
• Hacer cumplir las reglas de integridad referencial para proteger la relación entre tablas
cuando se agreguen, cambien o eliminen registros
Sugerencia Cuando diseñe una base de datos, haga un diagrama en un papel con las relaciones existentes
entre las tablas. Anote los campos mediante los cuales se relacionan las tablas. Después de crear las tablas,
utilice las notas para establecer todas las relaciones.
Página 51 de 127
Microsoft Access 2003 - I
2 Si su ventana Relaciones no se ve así, agregue las tablas que hagan falta utilizando el botón
Mostrar Tabla y organícelas de manera que aparezcan como en el ejemplo.
Observe una "pequeña diferencia" entre las relaciones que aparecen. Por un lado, las relaciones
entre las tablas MATERIAS-CALIFICACIONES, INSTRUCTORES-CALIFICACIONES,
CONCEPTOS-PAGOS, CONCEPTOS-CAJEROS, muestran la línea de relación diferente a las
líneas de relación entre ALUMNOS-CALIFICACIONES y ALUMNOS-PAGOS.
Explicación:
• El número 1 indica la tabla del extremo uno de una relación "uno a varios" (una
tabla de catálogo)
• El símbolo ∞ indica la tabla del extremo varios de una relación "uno a varios"
(una tabla de detalle)
• El extremo más grueso de la línea de relación indica que para esa relación se
exige el cumplimiento de la integridad referencial.
NOTAS IMPORTANTES:
Si desea imprimir un diagrama de las relaciones de su base de datos, ejecute el comando Imprimir relaciones
del menú Archivo.
Para editar una relación, haga doble clic sobre la línea de relación.
Para eliminar una relación, seleccione dicha relación y presione la tecla Supr.
Página 52 de 127
Microsoft Access 2003 - I
Integridad referencial
Access puede exigir el cumplimiento de la integridad referencial cuando se cumplen las siguientes
condiciones:
La integridad referencial no se puede exigir para tablas vinculadas pertenecientes a bases de datos
de otros formatos.
1 Edite la relación
(haciendo doble clic
sobre la línea de
relación que desee).
2 Active la casilla
Exigir integridad
referencial.
3 Access muestra
el tipo de relación.
Página 53 de 127
Microsoft Access 2003 - I
Observe que cuando se encuentra activada la casilla Exigir integridad referencial, se activan las
casillas Actualizar en cascada los campos relacionados y la casilla Eliminar en cascada los
registros relacionados.
Página 54 de 127
Microsoft Access 2003 - I
En el caso de las relaciones donde se exige la integridad referencial, puede especificar si desea
que Access realice automáticamente "en cascada" operaciones de eliminación y actualización para
los registros relacionados. Si selecciona estas opciones, se permitirán las operaciones de
eliminación y actualización que normalmente infringirían las reglas de integridad referencial.
Cuando elimine registros o cambie valores de clave principal en una tabla, Access hará los
cambios necesarios en las tablas relacionadas para conservar la integridad referencial.
Si para una relación selecciona Eliminar en cascada los registros relacionados, siempre que
elimine registros en la tabla principal, Access eliminará automáticamente los registros relacionados
de las tablas relacionadas. Por ejemplo, si elimina el registro de un alumno de la tabla ALUMNOS
teniendo activada Eliminar en cascada los registros relacionados, Access eliminará los registros de
las tablas CALIFICACIONES y PAGOS que coincidan con el alumno eliminado.
Si para una relación selecciona Actualizar en cascada los campos relacionados, siempre que
cambie el valor de una clave principal de un registro en la tabla principal Access cambiará
automáticamente la clave principal al nuevo valor en todos los registros de las tablas relacionadas.
Por ejemplo, si modifica la clave de un alumno en la tabla ALUMNOS, Access modificará
automáticamente la clave para ese alumno en las tablas CALIFICACIONES y PAGOS de manera
que se siga conservando la relación entre el alumno, sus calificaciones y los pagos que haya
realizado.
Tipos de Combinaciones
Existen tres tipos de combinaciones entre tablas relacionadas. La definición del tipo de
combinación para una relación en la ventana Relaciones, NO afecta a la relación propiamente
dicha; establece el tipo de combinación que se utilizará de forma predeterminada al crear consultas
basadas en las tablas relacionadas. Siempre es posible modificar el tipo de combinación
predeterminada más adelante, al definir una consulta.
Durante el estudio de las consultas, podremos conocer de manera precisa como funcionan las
combinaciones entre tablas.
Active la integridad referencial y la operación de actualización en cascada para las relaciones entre
las tablas ALUMNOS-CALIFICACIONES y ALUMNOS-PAGOS.
Página 55 de 127
Microsoft Access 2003 - I
CAPITULO 4
Exportar datos y objetos de bases de datos
La exportación es la forma de enviar datos y objetos de bases de datos a otras bases de datos,
hoja de cálculo o formato de archivo para que otra base de datos, aplicación o programa pueda
utilizar dichos datos y objetos. La mayoría de los objetos de una base de datos de Access se
pueden exportar a otra base de datos de Access.
Exportar tablas de una base de datos de Access a otra base de datos de Access
Suponga que en PROGRAMATICA se requiere de una pequeña aplicación, que deberá ser
independiente del control escolar, en la cual se llevará el seguimiento de los préstamos de libros en
la biblioteca. Le piden una copia de la información de los ALUMNOS registrados que usted tiene en
su sistema de control escolar. En vez de dar un listado con esta información, usted decide darles
una copia de la tabla ALUMNOS.
Lo anterior es muy sencillo. Para realizar lo anterior, deberá primero crear un nuevo archivo de
base de datos de Access Ilamado Control de Préstamos en Biblioteca.
Página 56 de 127
Microsoft Access 2003 - I
5 Escriba el nombre que tendrá la nueva tabla en la base de datos a la que será exportada
(Access sugiere el mismo nombre pero usted puede asignar cualquier otro que desee).
6 Seleccione
Definición y datos o
Sólo definición. En este
caso debe ser
Definición y datos .
Página 57 de 127
Microsoft Access 2003 - I
Con Access usted puede exportar la información de una tabla o consulta a un archivo de hoja de
cálculo de Excel. Considere que necesita enviar la información de los alumnos en un archivo de
Excel 97-2003.
1 Seleccione la tabla que desea exportar y ejecute el comando Exportar... del menú Archivo.
2 Ubique la carpeta a la cual desea exportar la tabla.
Guardar con formato significa que cuando Access envíe los datos a Excel, incluirá todo aquel
formato que haya sido establecido para los datos con el propósito de mejorar su aspecto. Por
ejemplo, un campo de fecha con el valor 28/12/77: al ser exportado sin formato se enviará como
28/12/77 mientras que, si lo exporta con formato se enviará como 28-Dic-77. Otro ejemplo serían
los campos de tipo hipervínculo que representan direcciones Web o de correo electrónico los
cuales al ser exportados sin formato se guardan como texto, mientras que si se exportan con
formato, entonces se conserva su característica de hipervínculo. En general también se respetan
los tamaños y tipos de fuente, estilos, alineaciones y todo aquello que acepte la versión de Excel a
la cual se este exportando.
Auto inicio significa que inmediatamente después de llevarse a cabo la exportación, se abrirá el
archivo de Excel para poder comprobar los resultados de la exportación.
Página 58 de 127
Microsoft Access 2003 - I
1 Seleccione la tabla que desea exportar y ejecute el comando Exportar... del menú Archivo.
2 Ubique la carpeta a la cual desea exportar la tabla.
Página 59 de 127
Microsoft Access 2003 - I
9 Confirme la ubicación del archivo al que será exportada la información y haga clic en el botón
finalizar.
Página 60 de 127
Microsoft Access 2003 - I
1 Seleccione la tabla que desea exportar y ejecute el comando Exportar... del menú Archivo.
2 Ubique la carpeta a la cual desea exportar la tabla.
Página 61 de 127
Microsoft Access 2003 - I
9 Confirme la ubicación y nombre para el archivo de texto y haga clic en el botón Finalizar.
Página 62 de 127
Microsoft Access 2003 - I
En los cuadro de diálogo que muestra el asistente para exportación de texto aparece el botón
Avanzado.... Al hacer clic en este botón aparece el siguiente cuadro de diálogo.
Debido a que se consideran muy obvias las opciones que muestra este cuadro de diálogo,
solamente nos concentraremos en el botón Guardar Como.... y en el botón Especificaciones....
Guardar como... es una opción que puede utilizar si exporta continuamente cierta información y no
quiere, cada vez que lo hace, tener que estar indicando las diferentes opciones para exportación.
Puede guardar las especificaciones bajo un nombre y llamarla posteriormente cada vez que lo
necesite.
Especificaciones es la opción que permite tener acceso a las especificaciones con nombre que
previamente haya guardado.
Página 63 de 127
Microsoft Access 2003 - I
Importar datos
Cuando se importan datos, una copia de la información se convierte en una tabla más
perteneciente a la base de datos que estamos usando. Como se trata ya de una tabla propia,
puede realizar los cambios que requiera incluso al diseño de la tabla sin que se afecte la
información original desde donde se importó. También puede crear relaciones entre la nueva tabla
importada y otras tablas de su base de datos.
1 Ejecute el comando Importar... del submenú Obtener datos externos del menú Archivo.
2 Ubique la carpeta en donde se encuentra el archivo de dBase que desea importar y
selecciónelo.
3 No olvide seleccionar el
formato de archivo que está 4 Haga clic en el
buscando. botón Importar.
Importar a una base de datos de Access tablas y otros objetos procedentes de otra base
de datos de Access.
Cuando se trata de importar desde otra base de datos de Access, no solamente se pueden
importar datos desde las tablas, también es posible importar cualquier otro de los objetos que
forman la base de datos desde donde se está importando.
1 Ejecute el comando Importar... del submenú Obtener datos externos del menú Archivo.
2 Ubique la carpeta en donde se encuentra el archivo desde donde desea importar y
selecciónelo.
Página 64 de 127
Microsoft Access 2003 - I
5 Seleccione las tablas u objetos que desee importar y haga clic en Aceptar.
Si Selecciona
Definición y datos Las consultas
tendrá una pueden importarse
importación no como consultas o
solo de las bien ser
estructuras de las convertidas en
tablas sino tablas.
también tendrá los
datos.
Página 65 de 127
Microsoft Access 2003 - I
Importar a una base de datos de Access datos procedentes de una hoja de cálculo de
Excel.
1 Ejecute el comando Importar... del submenú Obtener datos externos del menú Archivo.
2 Ubique la carpeta en donde se encuentra el archivo de Excel que desea importar y selecciónelo.
Página 66 de 127
Microsoft Access 2003 - I
1 Ejecute el comando Importar... del submenú Obtener datos externos del menú Archivo.
2 Ubique la carpeta en donde se encuentra el archivo de Texto que desea importar y selecciónelo.
Página 67 de 127
Microsoft Access 2003 - I
Los cuadros de diálogo del asistente para importar datos muestran un botón Avanzado.... Al hacer
clic en este botón aparece el siguiente cuadro de diálogo.
Debido a que se consideran muy obvias las opciones que muestra este cuadro de diálogo,
solamente nos concentraremos en el botón Guardar como.... y en el botón Especificaciones....
Guardar como... es una opción que puede utilizar si importa continuamente cierta información y no
quiere, cada vez que lo hace, tener que estar indicando las diferentes opciones para importación.
Puede guardar las especificaciones bajo un nombre y llamarla posteriormente cada vez que lo
necesite.
Especificaciones es la opción que permite tener acceso a las especificaciones con nombre que
previamente haya guardado.
Página 68 de 127
Microsoft Access 2003 - I
Vincular tablas
Cuando usted vincula una tabla, establece una conexión para tener acceso a los datos originales.
Puede eliminar el vínculo en cualquier momento sin afectar los datos reales.
Puede utilizar esta opción para tener acceso a bases de datos de otros formatos que se
encuentren dentro de la misma PC o desde otra PC dentro de la red de la empresa y poder, desde
Access, generar consultas, formularios, informes y páginas que utilicen esa información. Este es el
esquema de trabajo para aplicaciones Cliente / servidor en las cuales se colocan los archivos de
bases de datos que contienen las tablas en el servidor y los archivos de bases de datos con las
consultas, formularios, informes, etc. en las PC’s que hagan la función de estación de trabajo
vinculando las tablas del servidor a la base de datos de las estaciones de trabajo. Cada vez que
abra la base de datos de la estación de trabajo, Access utilizará los vínculos para “conectar" la
base de datos de la estación con las tablas del servidor.
1 Ejecute el comando Vincular... del submenú Obtener datos externos del menú Archivo.
2 Ubique el archivo de base de datos en donde se encuentra la tabla que desea vincular y
selecciónelo.
Página 69 de 127
Microsoft Access 2003 - I
Observe que Access muestra un icono diferente para cada tabla vinculada dependiendo de su
formato.
Página 70 de 127
Microsoft Access 2003 - I
En ocasiones pueden perderse los vínculos a las tablas. Quizá movió de ubicación un archivo y
Access no es capaz de vincular adecuadamente las tablas al momento de abrir la base de datos.
Si activó la casilla de Preguntar siempre por la nueva ubicación, Access mostrará este cuadro de
diálogo.
Página 71 de 127
Microsoft Access 2003 - I
3 Acepte.
Página 72 de 127
Microsoft Access 2003 - I
CAPITULO 5
Analizar con MS - Excel
Además de la opción para exportar, Access le permite analizar los datos de una tabla a través de la
aplicación Excel. Para hacer lo anterior simplemente...
Access creará un archivo de Excel dentro de la carpeta Mis Documentos asignándole el nombre de
la tabla o consulta que seleccione para analizar. Si ya existe un archivo de Excel con el nombre de
la tabla o consulta que desea analizar, Access le preguntará si desea reemplazar el archivo
existente. En caso de que no desee reemplazar el archivo existente pero si desee continuar,
Access mostrará un cuadro de diálogo en el que le solicitará el nombre y ubicación para el archivo
a crear.
Esta es una alternativa diferente a la opción de exportación de datos a un archivo con formato de
Excel.
Página 73 de 127
Microsoft Access 2003 - I
Así como puede analizar los datos de una tabla o consulta a través de MS-Excel, también es
posible publicar los datos de una tabla o consulta a través de MS-Word. Hacer esto es muy similar
al procedimiento estudiado anteriormente....
Access creará un archivo de Word dentro de la carpeta Mis Documentos asignándole el nombre de
la tabla o consulta que seleccione para publicar. Si ya existe un archivo de Word con el nombre de
la tabla o consulta que desea publicar, Access le preguntará si desea reemplazar el archivo
existente. En caso de que no desee reemplazar el archivo existente pero si desee continuar,
Access mostrará un cuadro de diálogo en el que le solicitará el nombre y ubicación para el archivo
a crear.
Página 74 de 127
Microsoft Access 2003 - I
Si conoce la combinación de correspondencia en Word, entonces utilice esta opción para combinar
un documento principal de MS-Word utilizando los datos provenientes de una tabla o consulta con
origen de los datos para la combinación. También puede utilizar, desde Word, una tabla o consulta
como origen de datos para su combinación de correspondencia.
Conforme trabaja con su base de datos, sobre todo en la etapa de creación de la misma, la base
de datos “crece" como producto de la constante creación y eliminación de diferentes objetos
(Tablas, Consultas, Formularios, Reportes, etc.) o como resultado de agregar y eliminar registros
de información. La base de datos puede crecer "artificialmente" debido al método que utiliza
Access para mantener un registro de las operaciones realizadas en la base de datos.
En ocasiones puede que la base de datos sufra daños debido a fallos de energía eléctrica mientras
la base de datos está abierta o esté siendo accesada en un entorno de red, o que la PC sea
apagada de manera abrupta.
Si ejecuta este comando mientras la base de datos esta abierta, Access la cierra, la compacta y
repara (en caso de ser necesario) y la vuelve a abrir. Esto significa que la base de datos
compactada y reparada es la misma base de datos original.
Si ejecuta el comando Compactar y reparar base de datos... sin que este abierta ninguna base de
datos, Access le muestra el cuadro de diálogo Base de datos a compactar para que ubique y
seleccione el archivo de base de datos que desea compactar.
Página 75 de 127
Microsoft Access 2003 - I
Página 76 de 127
Microsoft Access 2003 - I
Analizar rendimiento
Puede utilizar la característica de Access para analizar el rendimiento de cualquiera de los objetos
de la base de datos. Esta herramienta es particularmente útil cuando se trata de tablas.
Página 77 de 127
Microsoft Access 2003 - I
Usted decide si realiza las modificaciones que el Asistente para rendimiento le sugiere. Cuando el
asistente lo recomiende quizá debería hacerlo. Cuando solamente se trata de una idea quizá no le
haga caso.
Página 78 de 127
Microsoft Access 2003 - I
Ordenar registros
Al igual que otras aplicaciones del Office, Access cuenta con los comandos para ordenar la
información de una tabla o consulta bajo el criterio ascendente o descendente.
2 Seleccione la columna o ubíquese en una celda de la columna respecto a la cual desea ordenar
los registros
Esta opción le permite ordenar los registros de la tabla de acuerdo a solo un criterio. Si desea
ordenar la información de acuerdo a más de un criterio entonces debería pensar en utilizar un filtro
avanzado o una consulta.
Página 79 de 127
Microsoft Access 2003 - I
Buscar y Reemplazar
Esta es otra herramienta común dentro de las aplicaciones del Office. Para buscar una cierta
información dentro de una tabla o consulta...
3 Ejecute el comando Buscar… o Reemplazar del menú Edición o haga clic en el botón .
Página 80 de 127
Microsoft Access 2003 - I
Página 81 de 127
Microsoft Access 2003 - I
Notas
• Los caracteres comodines están concebidos para ser utilizados con datos de tipo
texto, aunque a veces pueden utilizarse con éxito con otros tipos de datos, como los de tipo
fecha, si no se cambia la propiedad configuración regional de estos tipos de datos.
El uso de Filtros por selección es una herramienta muy práctica que ofrece Access para obtener
información de una tabla o consulta que cumpla con un criterio especifico. Algo importante a
considerar es que los Filtros solamente se aplican a una tabla o consulta cuando está abierta en la
vista Hoja de datos.
Suponga que deseamos saber quienes son los alumnos que han obtenido una calificación de
nueve.
2 Localice un registro en donde aparezca el valor que desea (en este caso un registro
en donde haya una calificación de nueve) y seleccione el valor (puede ser una parte del
valor).
4 Para eliminar el filtro y volver a ver toda la información utilice el botón Quitar filtro.
Puede aplicar filtros por selección "en cascada", es decir, sobre los resultados de un filtro puede
aplicar un nuevo filtro por selección y de esta forma estará utilizando el método de eliminación para
llegar a tener solamente la información que le interesa.
Página 82 de 127
Microsoft Access 2003 - I
Los filtros por formulario son una excelente herramienta para obtener registros de información de
una tabla o consulta que cumpla con uno o más criterios según los datos existentes en la tabla o
consulta.
Suponga que desea saber quienes son los alumnos que obtuvieron una calificación de 80 en la
materia Access 97. Puede utilizar dos filtros por selección. Primero uno para filtrar los registros
cuya calificación sea 80 y luego un segundo filtro sobre el resultado obtenido para filtrar aquellos
registros en los que aparezca la materia Access 97.
3 Utilizando los filtros (los botones de lista desplegable) establezca los valores que desee.
4 Haga clic en el botón Aplicar filtro para ver los registros que cumplen los dos criterios
seleccionados.
Cada vez que ejecute un filtro por formulario sin cerrar la tabla o consulta, Access lo va
"guardando" para que lo pueda ejecutar nuevamente con solo seleccionar la ficha Or
correspondiente.
Página 83 de 127
Microsoft Access 2003 - I
Filtros avanzados
El uso de filtros por selección y filtros por formulario tienen un inconveniente: solamente se pueden
establecer criterios utilizando valores que coincidan exactamente con los datos existentes en la
tabla o consulta. Para ejemplificar esto, trate de utilizar filtros por selección o filtros por formulario
para responder a la pregunta ¿Cuáles son los pagos registrados menores a 900?.
Evidentemente no es fácil. Tendremos que utilizar un filtro o una orden avanzada. Esta es otra de
las herramientas que ofrece Access para obtener registros de información que cumplan con uno o
varios criterios al mismo tiempo. Además, los filtros avanzados permiten otras opciones como
definir el orden en que aparecerá la información y también el poder combinar los criterios por medio
de los operadores lógicos AND y OR lo cual cambia de manera importante los resultados arrojados
por el filtro.
5 Cuando desee quitar el filtro y volver a ver todos los datos haga clic en el botón Quitar filtro.
Página 84 de 127
Microsoft Access 2003 - I
Especificar criterios
En un filtro avanzado, para especificar criterios aplicables a un campo se utiliza una expresión. Una
expresión es una combinación de operadores y valores de texto o números que Access evalúa.
Cuando se utiliza una expresión para especificar criterios en un filtro, esta define el subconjunto de
registros que se desea ver.
Los criterios y las expresiones de un filtro se especifican de la misma forma que los criterios de una
consulta. La tabla siguiente muestra ejemplos de expresiones que definen criterios. No es
necesario escribir signos de número (#) a ambos lados de las fechas ni tampoco comillas para el
texto (a menos que el texto incluya espacios en blanco) pues Access los añadirá automáticamente
a su expresión.
Cuando introduce criterios en varios campos, para que un determinado registro sea incluido en la
hoja de respuestas del filtro, deben cumplirse todas las comprobaciones de una sola fila de criterios
o de una fila O. Es decir, Access realiza una operación lógica Y entre los criterios de la misma fila.
De modo que si introduce Access 97 en la fila criterios del campo Materia y < 8 en la fila criterios
del campo Calificación cuidando que los criterios estén dentro de la misma fila de criterios, para
que un registro sea seleccionado debe tener Access 97 como materia y un valor menor a 8 dentro
del campo Calificación. Si introduce Access 97 en la fila criterios del campo Calificación a introduce
< 8 en la fila criterios del campo calificación cuidando que cada criterio esté en diferente fila,
entonces, los registros que sean incluidos dentro de la respuesta serán aquellos que tengan un
valor Access 97 en el campo Materia sin importar que calificación tenga O aquellos registros que
tengan un valor menor a 8 para el campo Calificación sin importar de que materia sean.
Página 85 de 127
Microsoft Access 2003 - I
Cuando utiliza filtros avanzados, puede especificar el orden en el cual desea que aparezca la
información en la hoja de respuestas. Agregue los campos sobre los cuales se hará la ordenación y
establezca el orden para cada uno de ellos. Considere siempre que cuando se agregan criterios de
ordenación para más de un campo, los criterios se aplicarán de izquierda a derecha. Cuide siempre
de colocar adecuadamente los campos para evitar sorpresas.
ENTRE, EN y COMO
Además de los operadores de comparación y de los operadores lógicos, Access ofrece tres cláusulas de
predicado especiales que son útiles para especificar los datos deseados en la hoja de respuestas:
Página 86 de 127
Microsoft Access 2003 - I
Access dispone de varias funciones útiles que facilitan la comprobación de valores de fecha y hora.
A continuación, se explican estas funciones con ejemplos que utilizan el campo Fecha de Ingreso
de la tabla ALUMNOS.
En líneas anteriores comentamos que cuando se aplica un filtro avanzado, Access conserva el filtro para esa
tabla de manera que la próxima vez que ejecutemos la orden Filtro u orden avanzado, el último filtro aplicado
aparece en la cuadrícula QBE (Question Based on Example). Para remover un filtro de una tabla: Estando en
la cuadrícula QBE de un filtro avanzado, ejecute el comando Borrar cuadrícula del menú Edición y enseguida
(con la cuadrícula en blanco) aplique el filtro.
Página 87 de 127
Microsoft Access 2003 - I
Página 88 de 127
Microsoft Access 2003 - I
CAPITULO 6
Resumen de propiedades de campos
La siguiente, es una tabla que muestra de manera resumida los detalles de las propiedades de los
campos:
PROPIEDAD EXPLICACIÓN
Para los tipos de datos Texto y Memo, podemos especificar un formato personal que
controle la forma en que Access visualiza los datos.
Caracteres Uso
Se utiliza para presentar cualquier caracter o espacio en blanco
@
disponible en esa posición.
Se utiliza para presentar cualquier caracter disponible en esa
& posición. En caso de que no existan caracteres disponibles a
presentar, Access no visualiza nada.
<
Se utiliza para presentar todos los caracteres en minúsculas.
Página 89 de 127
Microsoft Access 2003 - I
Porcentaje Porcentaje
Científico Notación científica (tal como 1.05 x 10).
Para el tipo de datos Fecha / Hora, las opciones de formato siguen los modelos de
los ejemplos que se muestran a continuación.
Página 90 de 127
Microsoft Access 2003 - I
Para los tipos de datos Texto, Numérico (excepto id. de réplica), Moneda y
Fecha/Hora, podemos especificar la plantilla o máscara de edición que el usuario
verá cuando introduzca datos en el campo. Por ejemplo, podemos hacer que
Access proporciones los delimitadores (__/__/__) en un campo de fecha. O
podemos hacer que Access ofrezca un formato para los números de teléfono tal
como (###)000-0000.
Mascara de entrada Una máscara de entrada consta de tres partes separadas por un punto y coma.
La primera parte define la cadena de la máscara utilizando los caracteres de
definición de la máscara y los datos fijos incluidos. La segunda parte es opcional
y es un indicador que comunica al Access sí desea que los caracteres de formato
sean almacenados en el campo de la base de datos; coloque en esta segunda
parte un cero para caracteres especiales o un uno para almacenar solamente
caracteres introducidos.
Carácter Significado
En esta posición debe introducirse un dígito. Los signos
0
más (+) y menos ( - ) no están permitidos.
En esta posición, debe introducirse un dígito o un espacio
en blanco. Sí el usuario salta esta posición moviendo el
9
cursor sin introducir nada, Access no almacena nada.
Página 91 de 127
Microsoft Access 2003 - I
Título
Permite introducir un nombre de campo más descriptivo, que Access visualizará
en las etiquetas de los formularios y en los encabezados de los informes
PROPIEDAD EXPLICACON
Específica el tipo de control predeterminado para la visualización de este
campo en hojas de datos, formularios a informes. Para la mayoría de los
campos, deberá seleccionar Cuadro de texto. Sí el campo es una clave ajena
que apunta a otra tabla, puede seleccionar Cuadro de lista o Cuadro
Mostrar control
combinado para visualizar valores significativos procedentes de la tabla
relacionada. Además puede seleccionar Cuadro de lista o Cuadro combinado sí
este campo debe siempre contener uno de los valores de una determinada lista
de valores.
Cuando seleccione Cuadro de lista o Cuadro combinado en la propiedad
Mostrar control, deberá establecer esta propiedad para indicar sí la lista de
Tipo de origen de la fila valores posibles procede de una Tabla / consulta, una lista de valores
introducidos o una lista de campos con los nombres de campo procedentes de
otra tabla.
Si selecciona Sí, la lista visualizará el Título para cada columna del origen de la
Encabezados de columnas
fila.
Página 92 de 127
Microsoft Access 2003 - I
Las bases de datos relacionales soportan un valor especial en los campos de las tablas
denominado Nulo, que indica un valor desconocido. Los valores nulos tienen valores especiales.
Un valor nulo no puede ser igual a ningún otro valor, ni incluso a otro valor nulo. Esto significa que
no se pueden vincular (enlazar) dos tablas basándose en valores nulos. Además, la comprobación
A = B, cuando A o B o ambos contienen un valor nulo, da por resultado Falso. Finalmente, los
valores nulos no participan en los cálculos agregados que implican funciones tales como Suma o
Promedio (media). Sin embargo, podemos comprobar la existencia de un valor nulo comparándolo
con la palabra reservada Null o utilizando la función incorporada IsNull (EsNulo).
En contraposición, podemos igualar los campos Memo o Texto a Cadenas de longitud cero para
indicar que el valor del campo es conocido pero el campo está vacío. Es posible unir tablas
basándose en cadenas de longitud cero y comparar la igualdad de dos cadenas de longitud cero.
No obstante, para los campos de tipo Memo, Texto a Hipervínculo, debemos establecer la
propiedad Permitir cadenas de longitud cero a Si para permitir que los usuarios introducir cadenas
de longitud cero. Si no hace esto, Access convierte cualquier cadena de longitud cero, o cadena de
todo blanco, introducida por el usuario en un valor Nulo antes de ser almacenado en la base de
datos. Además, si establece la propiedad Requerido de un campo de texto a Si, Access almacena
una cadena de longitud cero si el usuario introduce "" o blanco en el campo.
¿Por que es tan importante diferenciar los Nulos de las cadenas de longitud cero?. Lo aclararemos
con un ejemplo: suponga que dispone de una base de datos que almacena el resultado de un
estudio sobre las preferencias de los automóviles. Para las personas encuestadas que no han
respondido a la pregunta sobre la preferencia del color sería apropiado almacenar un valor Nulo.
No deseará comparar las respuestas basadas en una respuesta Incierta", ni tampoco incluir la fila
en los cálculos de totales o de promedios. Por otra parte, es posible que algunas personas puedan
haber respondido a la pregunta sobre su preferencia de color "me es indiferente". En este caso,
tiene una respuesta conocida que es "ninguno" y que seria apropiado almacenar como una cadena
de longitud cero. De este modo, podrá comparar todas las respuestas "Me es indiferente" e incluir
estas respuestas en los totales y promedios.
Otro ejemplo puede ser el número de fax de su cliente en la base de datos. Si almacena un Nulo,
esto significa que no sabe si su cliente tiene fax o no. Si almacena una cadena de longitud cero,
sabe que el cliente no tiene fax. Access le proporciona la flexibilidad de tratar ambos tipos de
valores "vacíos".
Página 93 de 127
Microsoft Access 2003 - I
Página 94 de 127
Microsoft Access 2003 - I
Página 95 de 127
Microsoft Access 2003 - I
Seleccione el archivo o página Web a la que desea establecer el hipervínculo. Puede crear un
vínculo a un objeto de la base de datos actual, a una dirección de correo electrónico, a uno de los
archivos utilizados recientemente, a una de las páginas visitadas mediante su explorador de
Internet, a uno de los vínculos que tiene en su historial o buscar un archivo específico, página Web
o marcador.
Página 96 de 127
Microsoft Access 2003 - I
CAPITULO 7
Introducción
Cuando usted debe satisfacer una necesidad de información, plantea una pregunta a la base de
datos. Las consultas son los objetos de una base de datos de Access que sirven para dar
respuesta a las preguntas planteadas a la base de datos acerca de la información contenida en
ella. Una vez creada la consulta, ésta puede servir de base para crear un formulario o para un
informe.
Consultas de selección
Cuando definimos y ejecutamos una consulta de selección (que selecciona información de las
tablas y consultas de la base de datos, en contraposición a una consulta de acción, que inserta,
actualiza o elimina datos), Access crea una hoja de respuestas dinámica de los datos
seleccionados. En la mayoría de los casos, podremos trabajar con una hoja de respuestas
dinámica de la misma forma que trabajamos con una tabla: podemos hojear los datos, seleccionar
a imprimir información a incluso actualizar los datos de esta hoja. Pero, a diferencia de una tabla
real, una hoja de respuestas dinámica no existe realmente en una base de datos. Access crea
dicha hoja a partir de los datos existentes en las tablas y consultas cuando ejecutamos la consulta.
Una de las ventajas del uso de las consultas es que permiten encontrar fácilmente datos
procedentes de varias tablas relacionadas. No obstante, también son útiles para el análisis de los
datos de una única tabla.
Resuelva lo siguiente: Requerimos una relación que contenga los nombres de los todos los
alumnos, su teléfono, todas las materias y calificaciones que ha cursado, así como el instructor con
quien las curso. La relación deberá estar ordenada de manera ascendente de acuerdo al nombre
del alumno.
Para empezar, analice el problema y determine las tablas en las cuales está la información que
necesita reportar. Una vez determinadas las tablas necesarias...
Página 97 de 127
Microsoft Access 2003 - I
2 Seleccione las tablas o consultas que contienen los datos que necesita y haga clic en Agregar.
4 Agregue a la cuadrícula QBE los campos que necesite que aparezcan en la respuesta.
Puede agregar el asterisco (*) lo cual hará que sean mostrados todos los campos de la tabla en
cuestión. Nótese que, además del asterisco puede añadir campos individuales a la cuadrícula para
definir criterios para esos campos, aunque cuando haga esto debería anular la selección del
cuadro Mostrar en los campos individuales de forma que no aparezcan dos veces en la hoja de
respuestas dinámica.
Página 98 de 127
Microsoft Access 2003 - I
5 Para ver los datos que corresponden a la consulta puede utilizar el botón Vista hoja de datos o
bien Ejecutar de la barra de herramientas.
Botón Ejecutar
NOTA: En las consultas de selección no existe diferencia entre los botones Vista Hoja de datos y
Ejecutar. No obstante, en las consultas de acciones si existe una diferencia importante.
No olvide que las consultas de selección, buscan los datos solicitados dentro de las tablas
relacionadas y las muestran a través de una hoja de respuestas dinámica. Una característica
importante de este tipo de consultas es que los datos que muestran pueden ser modificados desde
la hoja de respuestas dinámica.
Página 99 de 127
Microsoft Access 2003 - I
En general, los campos que forman parte de la salida de una consulta, heredan las propiedades
definidas para esos campos en las tablas. También podemos definir propiedades, principalmente
para los campos calculados. Las propiedades de un campo de una consulta se definen desde la
vista Diseño.
Para establecer las propiedades de un campo haga clic secundario sobre el campo que desee y
seleccione el comando Propiedades.
Calcular valores
Podemos realizar cálculos utilizando cualquiera de las funciones incorporadas en Access, con
alguno de los campos de la tabla y colocar el resultado en un nuevo campo en la hoja de
respuestas dinámica. También podemos crear un campo en una consulta utilizando los operadores
aritméticos sobre los campos de una tabla subyacente para calcular un valor.
También podemos crear un nuevo campo de texto (cadena de caracteres) concatenando los
campos que contienen constantes de cadena o texto.
Los operadores que podemos utilizar en las expresiones son las siguientes:
Modifique la consulta realizada en la página 90 pero mostrando los apellidos y nombre del alumno
como un solo campo llamado Nombre del Alumno. La consulta deberá mostrar la calificación por
cada materia y un nuevo campo llamado Calificación final resultando de sumar 10 puntos a la
calificación.
La expresión para concatenar los apellidos y el nombre generando un nuevo campo llamado
Nombre del alumno sería como la siguiente:
La expresión para calcular un nuevo campo llamado Calificación final como resultado de sumar 10
puntos a la calificación sería como la siguiente:
En la expresión anterior se utiliza la función llamada Si inmediato (Inmediate If) la cual se utiliza
para evaluar expresiones condicionales no complejas y tiene la siguiente sintaxis:
Para escribir o modificar expresiones, puede utilizar el Zoom. Estando en la vista Diseño de una
consulta, haga clic secundario sobre el campo en el que desea escribir una expresión y ejecute el
comando Zoom. También puede presionarse la combinación de teclas Shift + F2.
(CLargo) realizan redondeo de enteros como sucede en los bancos: cualquier número mayor a
0.50 es redondeado por arriba, cualquier número menor que 0.50 es redondeado por abajo y
cuando se trata de un número cuya fracción es 0.50, las funciones se fijan en el primer dígito
entero y redondean los números impares por arriba y los números pares por abajo. De modo que
1.51 se convertirá en 2, el número 1.49 se convertirá en 1, el número 1.50 será redondeado a 2 (ya
que el entero 1 es impar) y 2.50 será redondeado a 2 (ya que el entero 2 es par).
No obstante, observe que estas funciones realizan un redondeo entero. Si desea mantener el
redondeo de los centavos, debería en primer lugar multiplicar el número por 100 y después
redondearlo. Un ejemplo podría ser:
CLargo(PrecioContrato*Semanas*Comisión*100)
Esta expresión proporciona la comisión debida en centavos redondeados como un tipo de datos
entero. Es muy sencillo, solo tendrá que dividir este resultado por 100 y utilizar la función Convertir
a Moneda (CMoneda) para obtener el formato exacto que desea.
Cuando generamos campos calculados, podemos asignar un nombre al nuevo campo. Para hacer
esto, escribimos una expresión como la siguiente:
Observe en el primer caso: se genera un nuevo campo llamado Nombre del alumno como
resultado de concatenar el campo Apellidos con un espacio y con el campo Nombre.
Para el segundo ejemplo, se genera un nuevo campo llamado Calificación final como resultado de
una expresión que evalúa una condición determinada.
Ordenación de datos
Normalmente Access presenta las filas de la hoja de respuestas dinámica en el orden en el que se
recuperaron de la base de datos. Sin embargo, podemos ordenar la información en una consulta
según una secuencia tal como hicimos con la hoja de respuestas dinámica de un filtro. Haga clic en
la fila Orden que se encuentra debajo del campo que desea ordenar y elija Ascendente o
Descendente a partir de la lista desplegable.
También podemos efectuar la ordenación por varios campos. Access acepta los criterios de
ordenación de izquierda a derecha según su orden de aparición en la cuadrícula de diseño de la
consulta.
Si desea ordenar de acuerdo al nombre del alumno y después con respecto a la materia, deberá
especificar:
Consultas de totales
En algunas ocasiones no estaremos interesados en visualizar todas las filas de la tabla. Puede que
prefiera ver los totales de los diferentes grupos de datos. Por ejemplo, el número total de
calificaciones registradas y el promedio de calificaciones para cada alumno.
Para ver la fila Total utilice el botón Totales de la barra de herramientas en la vista Diseño:
El resultado…
La función Cuenta, cuenta cada Id de materia que encuentra generando un nuevo campo llamado
Total materias.
La función promedio se aplica sobre el campo calificación y se genera un nuevo campo llamado
promedio.
Por último, observe que los registros aparecen ordenados por alumno en forma ascendente.
Una pregunta: ¿Cómo sabe Access que se desea la información por alumno?, es decir por que
muestra el número de materias y el promedio para cada uno de los alumnos. Respuesta: por que
la consulta agrupa los registros por alumno, según está indicado en el diseño de la misma.
La primera vez que pulsa el botón totales, Access muestra la leyenda agrupar por en la fila de totales de todos
los campos que se encuentren en la cuadrícula de diseño. En ese momento, los registros de cada campo
estarían agrupados pero no totalizados. Si ejecutase la consulta en ese momento, obtendría una fila en la hoja
de respuestas dinámica para cada conjunto de valores únicos, pero no los totales. Podemos crear totales
remplazando el ajuste agrupar por con alguna de las funciones de totales en la fila total.
Access proporciona nueve funciones de totales diferentes. Las funciones disponibles son:
Nombre de la
Operación que realiza
Función
Es posible que no desee incluir algunos registros en los grupos que forman parte de la consulta de
totales. Para filtrar ciertos registros de los grupos, podemos añadir a la cuadrícula de diseño el
campo o campos que desea utilizar como filtros. Para hacer esto, elija el parámetro Donde en la fila
Total, anule la casilla Mostrar de ese campo e introduzca criterios que indiquen al Access los
registros a excluir. Por ejemplo, modifique la consulta realizada anteriormente pero realizando los
cálculos solamente sobre los alumnos que cursaron materias con el instructor Juan Urbina:
También podemos filtrar grupos de totales después de que la consulta haya calculado los grupos.
Para hacer esto, introduzca criterios para cualquier campo que tenga un parámetro Agrupar por en
la fila total o una expresión que utilice una de las funciones de totales en su fila Total, Por ejemplo,
en la consulta anterior, deseamos que aparezcan solamente quienes tengan un promedio menor
de los 85 (esto significa que estén reprobados):
Para establecer un parámetro, introduzca un nombre o una frase encerrada entre corchetes ( [ ] )
en lugar de introducir un valor en la fila criterios. Lo que encerremos entre corchetes se convertirá
en el nombre por el que Access concederá el parámetro. Access mostrará 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 sola consulta, cada nombre de parámetro debe ser único e informativo. Si desea que el valor
de un parámetro sea además visualizado como salida en la consulta, puede introducir el nombre
del parámetro de una columna vacía en la fila campo.
Adapte la consulta anterior para que Access pregunte, cada vez que se ejecute la consulta, la
calificación aprobatoria deseada (La consulta mostrará los promedios que estén debajo de esta
calificación), así como el nombre del instructor deseado.
Si desea que también aparezca el nombre del instructor agregue el siguiente campo
Para cada uno de los parámetros de una consulta, podemos indicar al Access el tipo de datos que
será introducido. Access utilizará esta información para comprobar el valor escrito. Por ejemplo, si
define un parámetro como un valor numérico, Access no aceptará caracteres alfabéticos en ese
parámetro. Si define un parámetro como de tipo de datos de Fecha / Hora, Access no aceptará
ningún valor que no sea una fecha u hora válida en el indicador del parámetro. Por omisión,
Access asigna el tipo de datos Texto para los parámetros de la consulta. Si necesita modificar el
tipo de datos para los parámetros…
3 Acepte.
1. ¿Quiénes son los alumnos que han obtenido una calificación aprobatoria
en Access?. Se desea el nombre completo del alumno, su clave, la
calificación, el periodo y el instructor con quién la cursó. La calificación
aprobatoria es igual o mayor a 8.5.
2. ¿Quiénes son los últimos cuyo promedio es igual o mayor a 8.5?
3. Considerando solamente las calificaciones superiores a 8, ¿Cuál es el
promedio más alto? .¿Quién lo obtuvo?
4. ¿Cuál es el promedio general de todos los alumnos?
5. ¿A cuánto asciende lo cobrado por cada cajero?
6. ¿A cuánto asciende lo cobrado por cada cajero mensualmente?
7. ¿A cuánto asciende la cantidad cobrada por concepto de inscripciones?
8. ¿A cuánto asciende la cantidad cobrada por cada concepto?
9. ¿A cuánto asciende la cantidad cobrada por cada concepto los días
lunes, miércoles y viernes?.
10. ¿De cuánto es la cantidad mínima cobrada y de qué concepto es?
11. ¿De cuánto es la cantidad máxima cobrada y de qué concepto es?
12. ¿Cuántas operaciones de pago se registraron para cada cajero?
13. ¿Cuántas operaciones de pago realizó cada cajero, cuánto cobró cada
uno y cuál es el promedio de pago por operación?
14. La misma pregunta 13 pero para el primer trimestre.
15. La misma pregunta 13 pero cada trimestre.
16. ¿Cuál es la primera operación de pago realizada por el cajero RBR?
17. ¿Cuántos registros de pago realizó el cajero CLS menores a 800, a
cuánto ascienden estos pagos?
18. ¿Cuánto hemos cobrado en total el día de hoy?
19. ¿Cuántos alumnos han cursado materias con el instructor Julieta Estrada?
20. ¿Cuántos alumnos han cursado con cada instructor?
21. ¿Cuántos alumnos aprobados tiene cada instructor?
22. ¿Cuántos alumnos se inscribieron en cada periodo?
23. ¿Cuál es el promedio de ingreso de alumnos por periodo?
24. ¿Quién es el primer alumno que ingresó?
25. ¿Quién es el último alumno que ha ingresado?
26. ¿Cuántos alumnos de cada carrera tenemos?
27. ¿Cuál es el promedio de calificaciones por materia?
28. ¿Quién es el mejor promedio de cada carrera?
29. ¿Quién es el mejor promedio de cada materia?
30. ¿Cuál es el promedio por sexo?
31. ¿A cuánto ascienden los pagos de cada concepto por carrera?
32. Mostrar una relación de pagos por mes.
33. ¿Quiénes son los alumnos que no realizaron su pago en enero?
CAPITULO 8
Consultas de tablas de referencias cruzadas
1 Seleccione la tabla
...deseada
2 Seleccione Consulta.
3 Seleccione Vista
Diseño.
Cada campo de consulta de tabla de referencias cruzadas puede tener uno de los cuatro
parámetros siguientes: Encabezado de fila, Encabezado de columna, Valor (calculado en la
cuadrícula de diseño de tabla de referencias cruzadas) o Sin mostrar. Para que una consulta de
tabla de referencias cruzadas funcione, debe especificar al menos un campo como encabezado de
fila, un campo como encabezado de columna y un campo para que sea un valor en la consulta.
Cada encabezado de columna debe tener asignado en la fila total el valor Agrupar en. Cualquier
columna que sea un encabezado de fila puede tener el valor Agrupar en, una de las funciones de
totales (Cuenta, Min, Máx, etc.) o una expresión que incluya una función de totales. Deberá
seleccionar una de las funciones de totales disponibles o introducir una expresión que utilice una
de estas funciones para el campo que contiene el parámetro Valor en la cuadrícula de diseño.
Como en otros tipos de consultas de totales, podemos incluir campos para filtrar los valores del
resultado. Para estos campos debería seleccionar el parámetro Dónde de la fila Total, el
parámetro Sin mostrar en la fila Tab ref cruz y a continuación introducir el criterio. También
podemos introducir criterios para las columnas de encabezado y establecer criterios de ordenación
en cualquiera de los campos. Por omisión, Access ordena los valores de nombres de encabezado
de columna en orden ascendente.
Combinaciones externas
La mayoría de las consultas creadas para reunir información procedente de varias tablas muestran
los resultados basándose en datos coincidentes de una o más tablas. Por ejemplo, la consulta
Calificaciones por alumno muestra los alumnos para los que existe al menos una calificación
registrada en la tabla Calificaciones pero no mostrará aquellos alumnos que aún no tienen
registrada alguna calificación. Este tipo de consulta se denomina combinación de registros
equivalentes. Pero, ¿Y si quisiéramos ver también los alumnos que aún no tienen calificaciones?.
Podemos obtener esta información creando una combinación externa.
Haga doble clic sobre la línea de unión entre dos tablas para visualizar el cuadro de diálogo
Propiedades de la combinación.
Ahora debería visualizar una flecha en la línea de unión que va desde la lista de campos Alumnos
a la lista de campos Calificaciones, indicando que ha solicitado una combinación externa contados
los registros de la tabla Alumnos independientemente de la coincidencia.
Antes de ejecutar esta consulta, asegúrese de agregar un nuevo alumno a la tabla Alumnos.
Resultado
Se desea exportar una relación que contenga a todos los alumnos y sus calificaciones (incluso
aquellos que no tienen calificación registrada), además del nombre de la materia.
Al diseñar una consulta no sólo podemos seleccionar tablas, sino que además podemos
seleccionar otras consultas que pueden ser el origen de la entrada para una nueva consulta. De
hecho, otra forma de crear consultas utilizando varias tablas es utilizar otra consulta como entrada.
Para solucionar ciertos tipos de problemas, en primer lugar debemos crear una consulta que defina
un subconjunto de datos procedentes de las tablas y, a continuación, utilizar esa consulta como
entrada para obtener la respuesta final.
Como era de esperar, también podemos utilizar varias tablas en una consulta de tabla de
referencias cruzadas o en una consulta de totales. Por ejemplo, diseñe una consulta de tabla de
referencias cruzadas para mostrar el promedio por materia para cada instructor:
Puede utilizar un asistente para crear desde consultas muy sencillas, consultas de tablas de
referencias cruzadas, consultas para búsqueda de duplicadas y para crear consultas de búsquedas
de no coincidentes.
Access ofrece un número de propiedades asociadas a las consultas que permiten controlar la
ejecución de una consulta.
Normalmente, sólo seleccionaremos los campos que deseamos ver en la hoja de respuestas
dinámica cuando ejecutemos una consulta de selección. Sin embargo, si estamos diseñando una
consulta que será utilizada en una formulario y deseamos que todos los campos de todas las tablas
estén disponibles para el formulario, estableceremos la propiedad Mostrar todos los campos a Sí.
Sería aconsejable que mantuviese el parámetro predeterminado No y que sólo cambiase esta
opción en ciertas consultas.
Cuando una consulta es muy compleja, Access emplea varios segundos ( e incluso minutos) en
localizar los registros y comenzar a visualizar la información. Si sólo estuviese interesado en ver las
“primeras” o “ultimas” filas devueltas por la consulta, puede utilizar la propiedad Valores superiores
para indicar al Access que desea ver la información tan pronto como localice las n primeras filas o
el x porcentaje de las primeras filas.
Cuando ejecutamos una consulta, existen grandes posibilidades de que Access localice filas
duplicadas en el conjunto de registros. El valor predeterminado en la versión 8 de Access es
devolver todos los registros. También podemos indicar al Access que devuelva sólo los registros
únicos. Los registros únicos significan que el identificador de cada fila es único. Si indica la
visualización de los registros únicos, Access devolverá solamente las filas cuyos indicadores sean
diferentes entre sí. Si desea ver todos los posibles datos (incluyendo las filas duplicadas),
establezca las propiedades Valores únicos y Registros únicos a No. No es posible actualizar los
campos de una consulta que tenga establecida la propiedad Valores únicos a Si.
Cuando establece la propiedad Registros únicos a Sí, no tendrá efecto al menos que incluya más
de una tabla en la consulta e incluya por lo menos un campo de cada tabla en la salida. Esto puede
suceder cuando está interesado en los datos de una tabla pero desea establecer criterios de
filtrado basándose en los datos de una tabla relacionada sin visualizar los campos de dicha tabla
relacionada.
Si la base de datos está diseñada para que sea compartida por varios usuarios en una red, puede
que desee proteger las tablas y sólo permitir el acceso a ellas a través de consultas. El propietario
de las tablas siempre tiene acceso completo a cualquier tabla. Podemos denegar el acceso a las
tablas y permitir que usuarios autorizados puedan ver ciertos datos de las tablas. Este ajuste se
realiza estableciendo la propiedad permisos de ejecución a Del usuario. Si desea que los usuarios
de esta consulta “hereden” el permiso de propietario para acceder a las tablas cuando utilicen esta
consulta, puede establecer la propiedad Permisos de ejecución a Del propietario.
Utilice la propiedad Bloqueos del registro para controlar el nivel de integridad en la edición de una
consulta que ha sido diseñada para acceder a los datos que están siendo compartidos a través de
una red. El valor predeterminado cuando el usuario abre la consulta es que ningún registro esté
bloqueado. Access aplica el bloqueo sólo cuando necesita escribir en la fila de la tabla origen. Elija
el ajuste Registro modificado para bloquear una fila tan pronto como el usuario comience a
realizar algún cambio en esa fila. El bloqueo más restrictivo, Todos los registros, bloquea todos los
registros recuperados por la consulta mientras el usuario tiene abierta la consulta. Utilice este
parámetro sólo cuando la consulta deba realizar varias actualizaciones en una tabla y los demás
usuarios no deban acceder a ningún dato de la tabla hasta que haya finalizado la consulta.
Página 115 de 127
Microsoft Access 2003 - I
CAPITULO 9
Consultas de acciones
A veces deseará hacer cambios masivos en sus datos, cambios que afectarán de manera similar a
todo un conjunto de registros. Por ejemplo, suponga que desea subir un 10 por cuento el precio de
un cierto grupo de productos. Probablemente preferirá evitarse la tediosa tarea que supone calcular
cada cambio y actualizar uno a uno todos los registros. En su lugar, puesto que ese cambio afecta
a todos los registros en un mismo porcentaje, puede hacer que Access realice los cálculos y haga
las actualizaciones automáticamente. Para ellos, basta con crear una consulta de acciones.
Con las consultas de acciones puede crear tablas, así como modificar datos de tablas ya
existentes o eliminar de forma masiva varios registros. Access ofrece cuatro tipos de consultas de
acciones:
Necesitamos enviar información que solicita la SEP de los alumnos que ingresaron en el segundo
mes de 1998, correspondiente al instructor Juan Urbina. Esta información deberá estar en formato
de Dbase y se requiere de los siguientes campos:
Clave del alumno, Nombre completo, Materia Cursada, Calificación, Período, Instructor
Diseñe una consulta para crear una tabla llamada información a la SEP (Septiembre 99) y después
exporte a formato de Dbase dicha tabla.
1 Abra una consulta nueva en su visita Diseño y agregue los campos y criterios necesarios.
El resto del diseño de la consulta el cual contiene los criterios sería como se muestra a continuación.
Página 116 de 127
Microsoft Access 2003 - I
El campo calculado Periodo sería: Período: “Del” & Del “al” & Al
2 Pruebe que la consulta arroje los datos deseados de manera correcta cambiando a la vista
Hoja de datos utilizando el botón de la barra de herramientas o el comando Hoja de datos del
menú Ver.
Resultado:
Hasta este momento no ha notado diferencia alguna porque la consulta es una consulta de
selección como cualquier otra de las consultas que ya conoce. Para indicar al Access que
deseamos que esta consulta sea una Consulta de creación de tabla…
4 Escriba el nombre
Información SEP
(Septiembre 99) el
cual creará una tabla
con este nombre y
vaciará en ella los
resultados
Access muestra de la
el siguiente cuadro de diálogo.
consulta en lugar de
mostrarlos en pantalla Página 117 de 127
a través de una hoja
de respuestas
dinámica.
Microsoft Access 2003 - I
7 Ahora la consulta es una Consulta de creación de tabla y existe una diferencia importante entre
cambiar a la vista Hoja de datos de la consulta y ejecutar dicha consulta.
Al cambiar a la vista Hoja de datos, Access mostrará los registros que representan la salida de la
consulta en una hoja de respuestas dinámica por pantalla PERO NO CREA NINGUNA TABLA.
Puede cambiar entre las vistas Diseño y Hoja de datos cuantas veces requiera sin que la consulta
cree aún ninguna tabla.
Al ejecutar la consulta, Access reúne la información que requiere la consulta, CREA LA TABLA y
vacía en ella los registros.
Si no desea que Access pida la confirmación cada vez que ejecute una consulta de acciones,
ejecute el comando Opciones del menú Herramientas. Ajuste la casilla Consultas de acción de la
ficha Modificar / Buscar.
10 Access ha creado una tabla con el nombre que se indicó y la muestra en la ficha Tablas de la
ventana de la base de datos.
Cualquier consulta de selección puede ser convertida a una consulta de creación de tabla,
incluyendo aquellas consultas de totales y consultas que incluyen parámetros. Todos los temas
estudiados hasta este momento se aplican también a las consultas de creación de tabla.
La tabla generada por la consulta es una tabla más de la base de datos y puede ser ajustado su
diseño o relacionarla de acuerdo a sus requerimientos.
Las consultas de creación de tabla pueden ser utilizadas como una opción para crear tablas de
históricos.
Diseñe consultas de creación de tabla para generar tablas que contengan cada una de ellas datos
de calificaciones por instructor. Las tablas deberán llamarse Calificaciones Alumnos de Juan
Urbina, Calificaciones Alumnos de Julieta Estrada y Calificaciones Alumnos de Ana María Mora. La
consulta deberá pedir de qué período se desean las calificaciones.
Diseñe consultas de creación de tabla para generar tablas de pagos por cajero. Las tablas deberán
llamarse Pagos registrados por RBR y Pagos registrados por CLS. La consulta deberá pedir de qué
período se desean los registros de pago.
Las consultas de datos anexados, permiten reunir la información solicitada por la consulta y
agregar dicha información a una tabla existente.
Ahora, como la tabla ya existe y solamente se trata de agregar más información a la misma,
debemos crear una consulta de datos anexados. La manera de crear este tipo de consultas es muy
similar a la forma de crear una Consulta de creación de tabla.
El resto del diseño de la consulta, el cual contiene los criterios, sería como se muestra a
continuación.
2 Pruebe que la consulta arroje los datos deseados de manera correcta cambiando a la vista Hoja
de datos utilizando el botón de la barra de herramientas o el comando Hoja de datos del menú Ver.
4 Escriba el nombre
Información SEP
(Septiembre 99) el
cual creará una tabla
con este nombre y
vaciará en ella los
resultados de la
consulta en lugar de
mostrarlos en pantalla
a través de una hoja
de respuestas
dinámica.
5 De manera predeterminada Access creará la tabla 6 Acepte.
en la misma base de datos en la que se está
ejecutando la consulta. Puede aprovechar el momento
en que se está creando la tabla para exportarla a otra
base de datos de Access indicando el destino
escribiendo la ruta de acceso a la base de datos
externa.
7 Ahora la consulta es una consulta de creación de tabla y existe una diferencia importante entre
cambiar a la vista Hoja de datos de la consulta y ejecutar dicha consulta.
8 Ajuste la cuadrícula haciendo corresponder cada campo origen con un campo destino.
Puede diseñar una consulta de creación de tabla para crear una tabla (la primera vez que se ejecute)
y posteriormente ejecutar una consulta de datos anexados cada vez que desee "descargar" registros
de las tablas originales a las tablas de históricos.
Resuelva lo siguiente:
Diseñe una consulta para crear una tabla histórica de pagos. Posteriormente diseñe una consulta de
datos anexados para descargar los registros indicados mediante un periodo de la tabla original de
pagos a la tabla histórica.
NOTA: Las tablas históricas pueden o no estar vinculadas a los catálogos. En un momento dado
podría crear también tablas históricas de catálogos.
Este tipo de consultas permite eliminar registros en forma masiva. Puede seleccionar un conjunto
de registros que cumplan con un criterio y eliminarlos de una sola vez. Si desea eliminar registros
en tablas relacionadas de manera automática, deberá asegurarse que se encuentre activada la
casilla Eliminar en cascada los registros relacionados para aquellas tablas con relaciones uno a
varios. Por ejemplo, si desea poder eliminar un alumno y que automáticamente se eliminen sus
calificaciones (en caso de haberlas), active la casilla Eliminar en cascada los registros
relacionados para la relación entre las tablas Alumnos y Calificaciones.
De la misma manera, si desea que al eliminar un alumno se eliminen también los pagos realizados
por él (en caso de haberlos), ajuste las propiedades de la relación entre las tablas Alumnos y
Pagos para que sea posible eliminar en cascada los registros relacionados entre estas dos tablas.
Para el caso de las tablas Pagos y Detalle de pagos, sería recomendable que la eliminación en
cascada de registros relacionados entre estas dos tablas estuviese activada ya que, al eliminar un
pago, se debe eliminar también el detalle del pago.
Si no activa la eliminación en cascada para una relación "uno a varios" y desea eliminar un registro
de la tabla uno, él cual tiene registros relacionados en la tabla varios, deberá primero eliminar todos
los registros relacionados en la tabla varios antes de poder eliminar el registro de la tabla uno.
1 Abra una consulta nueva en su vista Diseño y ajuste la cuadrícula según se muestra a
continuación.
3 Ahora tenemos una consulta de eliminación (Observe que aparece una fila Ilamada Eliminar).
Donde para eliminar registros cuyo valor de campo coincida exactamente con el criterio
especificado. En consultas que contienen tablas con relación "uno a varios" establece los criterios
para la consulta.
Desde para eliminar registros cuyo valor de campo sea igual o mayor que el criterio especificado.
En consultas que contienen tablas con relación "uno a varios" indica la tabla desde la cual serán
eliminados los registros que cumplan los criterios especificados.
1. Cree una nueva consulta que contenga las tablas en las cuales desea eliminar. registros
o establecer criterios.
2. Cambie el tipo de la consulta a Consulta de eliminación.
3. De la tabla varios, arrastre el asterisco hasta la cuadrícula. Aparecerá Desde en la celda
Eliminar situada bajo este campo.
4. De la tabla uno arrastre los campos para los cuales desea establecer criterios.
Aparecerá Dónde en la celda Eliminar situada bajo este campo.
5. En la celda Criterios de los campos arrastrados a la cuadricula, escriba los criterios.
6. Ejecute la consulta. Access eliminará solamente los registros de la tabla varios.
7. Elimine de la cuadrícula las columnas que contiene campos de las tablas varios.
8. Cuando solamente queden campos de la tabla uno, vuelva a ejecutar la consulta para
que Access elimine los registros de catálogo.
Consultas de actualización
Con frecuencia querrá ejecutar procesos que afecten de manera similar a un grupo de registros.
Por ejemplo, puede que desee aumentar los precios de su catálogo de artículos. En estos casos
será necesario diseñar una consulta de actualización.
1 Abra una nueva consulta en su vista Diseño y realice los siguientes ajustes...
2 Convierta la
consulta a una
consulta de
actualización, desde la
barra de herramientas
o desde el menú
Consulta.
3 Ejecute la consulta y Access afectará a todos los registros que cumplan con el criterio
actualizando los campos al nuevo valor establecido.
Resuelva lo siguiente:
La sentencia SELECT forma el núcleo del lenguaje de bases 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. La sintaxis de la sentencia SELECT consta de cinco cláusulas
principales, construidas normalmente de la siguiente manera:
Consultas de unión
Como su nombre lo indica, las consultas de unión permiten "unir" información de varias tablas en
un formato tabular para que sean mostrados como una sola hoja de respuestas dinámicas
haciendo coincidir los campos uno a uno dentro del diseño.
Diseñe una consulta de unión para "juntar" la información de las tablas Calificaciones de Alumnos
de Juan Urbina, Calificaciones de Alumnos de Julieta Estrada y Calificaciones de Alumnos de Ana
Maria Mora.
4 Cambie a la vista Hoja de datos o ejecute la consulta para ver los resultados.
Resuelva lo siguiente: Diseñe una consulta para unir los registros de las tablas Pagos
registrados por RBR con los registros de la tabla Pagos registrados por CLS.
Dentro de las consultas de unión, puede calcular nuevos campos y asignarles nombre.
Por ejemplo:
En el ejemplo anterior se utiliza una expresión que multiplica el valor del campo Cantidad por el
valor del campo Precio para generar un nuevo campo Ilamado Importe.
Si un nombre de un campo existe igual en más de una tabla, de manera que Access pueda tener
problemas de ambigüedad, deberá escribir el nombre del campo precedido del nombre de la tabla,
ambos separados por un punto:
El estudio completo del SQL para generar consultas avanzadas se reserva para el curso avanzado
de Access.