Microsoft Access 2000
Lección: 132
Capítulo: Cómo crear una consulta de acción
Para crear una consulta de acción crearemos primero una consulta de selección y,
una vez en la cuadrícula de diseño, abriremos la lista de tipos de consulta,
como se mostrara oportuna-mente, y pulsaremos el botón correspondiente a la
consulta de acción elegida.
Podemos también tomar una consulta de selección existente, en el modo diseño, y
pulsar uno de los botones que mostramos para transformarla en una consulta
de acción, lo que no impli-ca modificar la consulta original, ya que debido a
que cambiamos el tipo de consulta, en el mo-mento de grabar se nos pedirá
que le asignemos un nuevo nombre, creándose así un nuevo obje-to.
Cómo utilizar el botón nuevo objeto
Ya vimos que dentro del cuadro de diálogo Base de datos dispo-nemos de un botón
Nuevo para crear nuevos objetos del tipo correspon-diente al de la solapa
activa.
En la barra de herramientas disponemos de un botón con el mismo propósito;
pulsando el botón Nuevo objeto se desplegará el menú de la figura 9.26.
Figura 9.26
Consultas de creación de tablas
Estas consultas son las más parecidas a las de selección; veamos cómo se crean:
Figura 9.26: Menú para la creación de nuevos obje-tos
1. Pulsemos el botón Nuevo objeto y del menú de la figura 9.26 seleccionemos la
opción Consul-ta.
2. Aparecerá el cuadro Nueva consulta en donde se mostrará seleccionada la
opción Vista di-seño; pulsemos Aceptar.
3. Si el cuadro Mostrar tablas no se encontrara presente, pulsemos el botón
correspondiente, seleccionemos Clientes, pulsemos Agregar y cerremos este cuadro
pulsando Cerrar.
4. Pulsemos sobre el campo CODCLI, luego pulsemos la tecla y manteniéndola
presionada, pulsemos sobre el último campo. De este modo quedarán seleccionados
todos los campos.
5. Pulsemos sobre la selección y, sin soltar el botón del mouse, arrastremos
sobre la primera columna de la cuadrícula. Habremos agregado todos los campos
de la tabla a la nueva consul-ta.
6. Pulsemos en la casilla Criterio de la columna NOMBRE y escribamos:
Como ([¿Qué clientes desea copiar? (x*): ])
Lo que hicimos hasta ahora no nos es desconocido, ya que se trata de una
consulta de pa-rámetros.
7. Probemos esta consulta y verifiquemos que funcione correctamente.
8. Volvamos al modo Diseño.
9. Pulsemos el botón Tipo de consulta y del menú elijamos Consulta de creación
de tabla.
Aparecerá un cuadro de diálogo Crear tabla pidiéndonos el nombre de la tabla que
genera-remos con los datos de la consulta (figura 9.27).
Figura 9.27
10. Escribamos Borrador de clientes y pulsemos Aceptar.
11. Ejecutemos la consulta y aparecerá la ventana de parámetros de la figura
9.28.
Figura 9.28
12. Escribamos, como se muestra en la figura: p* y pulsemos Aceptar. Este
comando creará una nueva tabla: Borrador de clientes, con los datos
seleccionados
por la clave p*, por lo que pre-viamente presentará el cartel de aviso de la
figura 9.29.
Figura 9.29
13. Guardemos esta consulta asignándole el nombre Selecciona por primera letra.
Si ahora pasamos al cuadro Base de datos y pulsamos la solapa Tablas, podremos
abrir la tabla que acabamos de crear.
Si el resultado no nos conformara, haremos las correcciones o ajustes necesarios
y volve-remos a ejecutarla, para sobrescribir la tabla Borrador de clientes
con los nuevos datos.
En esta segunda ejecución ya no será necesario indicar el nombre de la tabla;
tomará el mismo nombre que se nos pidió la primera vez.
Si quisiéramos cambiar el nombre asignado, deberíamos acceder a la consulta en
modo Di-seño, y en el cuadro de propiedades, cambiar el contenido del campo
Tabla de destino por el nuevo nombre.
Qué es una consulta de datos anexados (añadir datos)
Este otro tipo de consulta, como la anterior, copia datos pero en lugar de
borrar la tabla y crear una nueva, agrega los datos a una tabla existente.
Los campos que se copien deben tener el mismo tipo de dato en las tablas de
origen y des-tino.
Para crear este tipo de consulta, elaboraremos primeramente una consulta de
selección in-cluyendo los campos de la tabla de origen que queremos copiar.
Podemos también aplicar condi-ciones de selección si lo que buscamos es copiar
sólo determinados registros.
Luego, la transformaremos en consulta de Datos anexados (pulsando el botón
correspon-diente); nos pedirá el nombre de la tabla de destino y, una vez
asignado,
aparecerá la nueva fila Anexar a:
Si en la tabla de destino se encuentran columnas cuyos nombres y tipo de datos
coinciden con los de la tabla de origen, éstos se asignarán automáticamente.
Esta asignación automática supone que campos de igual nombre contienen el mismo
dato, aunque podría no ser así; por ejemplo, cuando en la tabla de origen
existiera un campo llamado RR (por Provincia) y en la de destino otro de igual
nombre, pero referido al código del Proveedor.
Es muy sencillo asignar o modificar las asignaciones manualmente, abriremos la
lista de la fila Anexar a:, de la columna correspondiente; allí aparecerán
los nombres de todos los campos de la tabla destino para elegir el que
corresponda.
Así, uno a uno asignaremos los campos que recibirán los datos en la tabla
destino.
En el caso del ejercicio, por tratarse ambas tablas (origen y destino) de copias
de un mismo original, al seleccionar la tabla de destino, los campos homónimos
(todos) se asignarán automáti-camente.
Creemos una consulta de datos anexados
La ejecución de la consulta anterior creó una copia de la tabla original con un
subgrupo de sus registros (aquellos cuyo nombre comienza con la letra P).
Ahora, crearemos una nueva con-sulta, idéntica a la anterior, pero del tipo de
datos anexados, la cual agregará a Borrador de clien-tes los registros agrupados
según la letra inicial que se solicite. Agregaremos así los registros co-menzados
con la letra "P" y en una posterior ejecución los de la letra "C".
Copiemos la consulta anterior (de creación) para transformarla luego en una
consulta de agregar datos.
1. Accedamos a la ventana de Consultas pulsando la solapa correspondiente del
cuadro Base de datos.
2. Pulsemos Control y mientras mantenemos pulsada esta tecla pulsemos sobre la
última consulta creada: Selecciona por primera letra, arrastremos y soltemos
dentro del mismo cuadro base de dato. Obtendremos una nueva consulta, copia de
la anterior, llamada Copia de Selecciona por primera letra.
3. Estando seleccionada esta última volvamos a pulsar sobre su nombre; este
aparecerá recua-drado.
4. Escribamos un nombre en reemplazo de éste: Añade por primera letra.
5. En el cuadro de diálogo Base de datos pulsemos con el botón derecho del mouse
sobre la nueva consulta y del menú emergente seleccionemos la opción Vista
Diseño.
6. Estando en la cuadrícula de diseño abramos la lista de Tipos de consulta y
del menú de la figura 9.25 seleccionemos Consulta de datos anexados. Aparecerá
el cuadro de la figura 9.30 para que indiquemos a qué tabla hemos de agregar los
datos.
Figura 9.30
7. Pulsemos Aceptar y volveremos a la cuadrícula.
8. Ejecutemos esta consulta de añadir. Mediante una operatoria similar a la que
empleáramos con la consulta anterior, aparecerá un cuadro como el de la
figura 9.28 en donde especificare-mos L* para que se agreguen ahora los clientes
que comienzan con L. Aparecerá un cartel que nos avisa de la operación
que estamos por hacer.
9. Pulsemos Sí y la tabla habrá incorporado los nuevos registros.
10. Pulsemos Guardar.
11. Cerremos el cuadro de diseño de la consulta y luego, en el cuadro de diálogo
base de datos, pulsemos doble clic sobre la nueva consulta, para ejecutarla.
12. De la misma forma que en los casos anteriores, agreguemos ahora los clientes
que comienzan con G (G*).
13. Abramos la tabla Borrador de clientes (actualizada) y verifiquemos que se
han agregado los grupos de registros solicitados.
Cómo crear consultas de actualización
Este tipo de consultas permite modificar uno o más campos de la tabla,
eligiéndose los re-gistros con los criterios de selección que ya conocemos, y
aplicándose
a las columnas de cambio expresiones que nos son también conocidas, para
modificar sus datos. Este caso es distinto de los anteriores, en los que había
una tabla de entrada y una de salida. Aquí la consulta trabajará sobre una sola
tabla.
Utilizaremos esta consulta para ajustar el campo importe de los registros
seleccionados, de acuerdo a un coeficiente determinado.
1. Creemos una copia de la última consulta y asignémosle el nombre Actualiza
importes.
2. Pulsemos el botón Diseño en el cuadro Base de datos y ya en la cuadrícula
eliminemos todas las columnas, excepto las que corresponden a los campos Nombre
y Montofacturado.
En este tipo de consultas pueden agregarse sólo aquellos campos que sean
necesarios, y en este caso necesitaremos el campo Nombre para seleccionar los
registros,
y el campo Monto-facturado para ajustar el importe contenido en el mismo.
En la fila de criterios de la columna Nombre ya tenemos el criterio de selección
establecido, por lo tanto, la dejaremos como está.
Debe quedar claro que no es necesario que este tipo de consulta trabaje con
parámetros (criterios con [ ]); tenemos total libertad para aplicar todo lo
que conocemos en cuanto a criterios para la selección de los registros.
3. Del mismo modo que lo hicimos anteriormente, cambiemos el tipo de consulta
seleccionando esta vez (figura 9.25) la opción Consulta de actualización.
Aparecerá una nueva fila: Actualizar a: en la cual debemos indicar, mediante
expresiones qué operaciones queremos realizar para cada columna de la tabla.
Si no hubiéramos eliminado las columnas que no se utilizan, éstas no actuarán si
dejamos su fila Actualizar a: en blanco.
En estas expresiones podemos referirnos a campos de la tabla asignada o de
cualquiera que se encuentre relacionada con la misma (y, por supuesto,
incorporada
en la parte superior de la cuadrícula de diseño).
Toda referencia a campos debe encerrarse entre corchetes. Veremos ahora un
ejemplo sencillo.
4. En la casilla de la fila Actualizar a: correspondiente a la columna
Montofacturado, ingrese-mos la siguiente expresión: [Montofacturado]*1,15. La
cuadrícula
tendrá ahora el aspecto de la figura 9.31.
Figura 9.31
Si el parámetro Separador de decimales de Windows estuviera en modo punto {.}
utilicemos el punto en lugar de la coma en la fórmula de Montofacturado.
Esta expresión multiplicará el monto facturado por 1,15, es decir que le
aplicará un aumento del 15%, pero recordemos que al ejecutar la consulta
podremos
seleccionar a qué clientes aplicar ese cálculo.
De esta forma, con consultas de este tipo, podremos aplicar cambios a conjuntos
de regis-tros de una tabla.
5. Ejecutemos la consulta, seleccionemos algún grupo de registros (C*, Cas*,
etc.) y comprobe-mos que sólo a éstos se les ha aplicado el cambio.
6. Guardemos esta consulta.
También podemos colocar parámetros en Actualizar a:
En lugar de la expresión [Montofacturado]*1,15 podemos emplear esta otra:
[Montofacturado]*[Ingrese el coeficiente]
y de esta forma, podremos también decidir al momento de ejecutar la consulta
cuál será el coefi-ciente que aplicaremos.
Cómo crear consultas de eliminación
Una consulta de este tipo permite eliminar registros en forma selectiva.
Utilizando los crite-rios podremos elegir cuáles registros eliminaremos y cuáles
no.
Como en todos los casos que vimos, aquí también previamente podemos probar como
con-sulta de selección, y así exhibir en forma de hoja de respuestas dinámicas
y revisar los registros que luego eliminaremos de la tabla.
En este tipo de consultas sólo es obligatorio incluir los campos que nos
servirán para identi-ficar los registros que borraremos.
Estableceremos los criterios de selección necesarios, revisaremos esos datos en
la pantalla como consulta de selección y, por último, la transformaremos
en consulta de eliminación, para finalmente ejecutarla.
1. Copiemos la consulta anterior, asignémosle como nombre elimina según clave y
quitémosle luego el campo Montofacturado, ya que no lo necesitamos.
2. Pasemos a Diseño; en Criterios, podemos dejar la selección de parámetros de
la consulta anterior o bien colocar en su lugar cualquier criterio de selección.
Sólo cambiemos en la pre-gunta que está entre corchetes la palabra copiar por
eliminar.
3. Transformemos len consulta de eliminación. La cuadrícula tomará el aspecto de
la figura 9.32.
Figura 9.32
4. Ejecutemos esta consulta de eliminación; aparecerá la ventana de la figura
9.33.
Figura 9.33