Bases de Datos Access
Tabla de Contenido
-
Usar formularios para introducir los parámetros de una consulta
-
Crear Consulta
-
Crear Formulario
-
Usar botones en los formularios
-
Insertar una imagen por cada registro
-
Insertar una imagen externa por cada registro
-
CombinarTablas
-
Usar formularios para introducir los parámetros de una consulta
-
Pasar archivos de InfoNet 1.0 (Access 1.0) a Access 97/2000/XP
Contenido
-
Cómo se hace
- Podemos pasar a Access los parámetros de una consulta a través de un formulario, de manera que la búsqueda le sea mucho más fácil al usuario.
- Veremos como hacerlo mediante un ejemplo que usa una base de datos de compact disc de música.
- Mediante un formulario, se le pedirá al usuario que elija un estilo musical de los existentes en la base de datos. Se buscarán y mostrarán los registros de CDs que pertenecen al estilo seleccionado.
Pasos a seguir:
- Crear una consulta en la base de datos
- Crear un formulario en la base de datos
|
-
Pasos a seguir
- Veamos como generar una consulta para la cual necesitamos que el usuario introduzca un valor del campo Estilo:
- Vamos a la sección consultas de Access y pulsamos Crear consulta en vista de diseño.
- Aparece la consulta que vamos a crear.
- Agregamos la tabla/as que necesitemos para realizar la consulta. (En este caso Disco).
- Colocamos los campos que queremos que aparezcan cuando realicemos la consulta. Por ejemplo: Titulo, Interprete y Estilo.
Consulta en vista de diseño

- En el criterio del campo Estilo introducimos lo siguiente:
[Forms] ![Busqueda1]![Estilo]
- Esto significa que tomará el parámetro Estilo del campo Estilo incluido en el formulario Busqueda1, que crearemos tras terminar de construir la consulta.
- Sería útil que si el usuario no introduce ningún estilo para hacer la búsqueda, automáticamente le aparecieran todos los registros de la base de datos. Para ello debemos escribir en la sección 'O:' del campo 'Estilo' de la consulta:
Como ([Forms]![Busqueda1]![Estilo]) & '*'
- Es importante tener en cuenta que este comodín omite aquellos registros cuyo valor es NULO. Por ello, también es importante que nunca dejemos campos nulos en las tablas de datos, pues luego pueden aparecer errores al realizar las consultas, etc.
Permite que el usuario deje en blanco el parámetro 'Estilo'

- Podríamos hacer que también mostrara los registros que en Estilo tienen valor NULO mediante la siguiente expresión:
Como ([Forms]![Busqueda1]![Estilo]) & '*' O Es Nulo
- Sin embargo, esto haría que si el usuario introduce el parámetro se muestren los registros que poseen dicho parámetro, y además, los registros con valor NULO en el campo estilo.
- Guardamos la consulta, con el nombre Inventario_CD_por_Album.
|
-
Pasos a seguir
- Vamos a la sección formularios de Access y pulsamos Crear formulario en vista de diseño.
- Aparece el formulario que vamos a crear.
- En el cuadro de herramientas de formulario seleccionamos Cuadro de texto:
- En el cuadro de herramientas de formulario seleccionamos Botón de comando:
- Al crear al botón sobre el forulario se abre el asistente para botones de comando.
- Seleccionamos en Categorias Otras, y en Acciones Ejecutar consulta.
- Seleccionamos la consulta que queremos ejecutar al pulsar el botón. En nuestro caso será Inventario_CD_por_album.
- A continuación elegimos el texto o imagen que queremos que aparezca en el botón. Nosotros pondremos el texto Buscar.
- Introducimos un nombre para el botón, por ejemplo BtnBuscar1.
- Ya está creado el formulario. Lo cerramos y lo guardamos con el nombre Busqueda1.
- A partir de ahora, al ejecutar el formulario Busqueda1 se le pedirá al usuario que introduzca un estilo de música. Cuando lo introduzca y pulse el botón Buscar, automáticamente se le generará una lista con los registros de la base de datos que tienen dicho estilo.
Propiedades de cuadro de texto

|
-
Botón borrar registro- Permite borrar registros dentro de la vista de formulario.
|
-
-
Pasos a seguir
- Imaginemos que queremos mostrar la portada del disco en el formulario que muestra las características del mismo. Para ello debemos seguir los siguientes pasos...
- En la tabla donde están las características de los discos debe existir un campo de texto donde se almacene la ubicación de la imagen de cada registro.
En el formulario:
- Añadimos un cuadro de texto que tome de la tabla la ubicación de la imagen para cada registro. En las propiedades del campo de texto, en la pestaña Otras, nombramos dicho campo como RutaImagen.
- A continuación, insertamos una imagen (en realidad es un control de imagen), mediante el cuadro de herramientas o mediante el menú Insertar/Imagen. Ahí seleccionamos la ruta a la imagen. En las propiedades de la imagen, en la pestaña Otras, renombramos el control de imagen como ControlImagen.
- Abrimos las propiedades del formulario (haciendo clic en el recuadro superior izquierdo del formulario).
La flecha roja indica donde ha de hacerse doble clic para mostrar las propiedades del formulario

- En la pestaña Eventos, pulsamos sobre AlActivarRegistro, apareciendo el símbolo '...'
- Pulsamos sobre él y elegimos Generador de código.
- Tras abrirse el editor de Visual Basic, añadimos el siguiente código:
Private Sub Form_Current()
On Error Resume Next
Me! [ControlImagen].Picture = Me![RutaImagen]
End Sub
- Cerramos el editor de Visual Basic guardando los cambios y volvemos a Access.
- Abrimos las propiedades del cuadro de texto que hemos creado, donde se incluye la ubicación a la imagen de cada registro.
- En la pestaña Eventos, pulsamos sobre AlActualizarRegistro, apareciendo el símbolo '...'
- Pulsamos sobre él y elegimos Generador de código.
- Tras abrirse el editor de Visual Basic, añadimos el siguiente código:
Private Sub Form_Current()
On Error Resume Next
Me![ControlImagen].Picture = Me![RutaImagen]
End Sub
- Cerramos el editor de Visual Basic guardando los cambios y volvemos a Access.
- A partir de ahora, cuando metamos un registro nuevo, indicaremos la ubicación de su imagen asociada, apareciendo la misma al abrir el formulario con el resto de los datos.
|
-
Pasos a seguir
- Normalmente si queríamos combinar dos tablas de una base de datos Access en la tabla en la que se incluye dicha relación se mostraban los campos llave o identificadores de la tabla a la cual la relacionábamos.
- Esto resultaba realmente incomodo, ya que es difícil aprenderse de memoria cada identificador para saber a que
registro nos estamos refiriendo.

- Veremos un ejemplo de como mostrar el nombre de un municipio en lugar de su ID dentro de una tabla que contiene una lista de centros culturales de diversos municipios.
- Para ello debemos tener la tabla de municipios y la tabla de los
centros:


- Como puede verse, en la tabla de los Centros está la referencia
a la tabla de Municipios. Dicha referencia se realiza mediante el ID del municipio (cuyo valor está en el campo CodMunicipio).
- Como podía verse en la primera imagen de este documento, en dicho campo de la tabla Centros se veían las ID de los municipios en los cuales estaba cada centro, pero eso resulta muy poco práctico, ya que como se ha dicho no nos sabemos de memoria el ID de cada
municipio.
- Para que en lugar de salir el ID salga el nombre debemos
realizar una Consulta o Query. Para ello nos dirigimos a la pestaña Búsqueda una vez elegido el campo CodMunicipio en la tabla de Centros. Dicha pestaña muestra lo siguiente:

- Ahora explicaremos brevemente cada casilla:
- Mostrar control. Aquí se elige como se verán los
valores de la tabla Municipios al interactuar con el campo CodMunicipio de
la tabla Centros. Si elegimos Cuadro combinado no solo podremos meter
el valor de un municipio ya existente en la tabla Municipios, sino que
podremos añadir también nuevos municipios sin tener que abrir que abrir la
tabla Municipios. Si eligiéramos Cuadro de lista no podríamos
añadir nuevos municipios, sino solo los contenidos en la tabla Municipios.
- Tipo de origen de la fila. Como vamos ha hacer una
consulta debe estar seleccionado Tabla/Consulta.
- Origen de la fila. Aquí se incluyen los comandos SQL
de la consulta. Si no se está familiarizado con el SQL podemos pulsar el
botón que tiene a la derecha (...), el cual nos llevará a una página de
consulta de Access, donde fácilmente podremos realizar dicha consulta.
- Para hacer la consulta debemos añadir la tabla Municipios, y después incluir
los campos CodMunicipio (el ID del municipio) y Nombre (nombre del municipio),
ordenando los resultados de la consulta de manera ascendente por el nombre.
- Pero ¿que conseguimos con esta consulta?. Muy sencillo: Seleccionamos de la
tabla Municipio todos sus valores con sus correspondientes ID. Después
usaremos esta consulta para que cuando vayamos a meter el ID de un municipio
en la tabla de Centros en lugar de dicho ID podamos ver el nombre del
municipio en cuestión. Sin embargo para hacer esto aún queda por definir
algunas propiedades de la Búsqueda.
- Columna dependiente. Aquí elegimos de cual de las
columnas creadas en la consulta se van a tomar los valores que se meterán
en el campo CodMunicipio de la tabla Centros. En nuestro caso es la columna
1, ya que dicha columna en nuestra consulta pertenece a CodMunicipio.
- Numero de columnas. Número de columnas que tendrá
nuestra consulta. Dos en nuestro caso.
- Encabezado de columnas. Con el elegimos que se nos
muestren los encabezados de CodMunicipio y Nombre cuando vayamos a meter un
valor en el campo CodMunicipio de la tabla de Centros.
- Ancho de columnas. Aquí podemos elegir que columnas
vamos a mostrar en el campo CodMunicipio de la tabla Centros cuando vayamos
a meter un nuevo valor. Como nos interesa que nos muestre el nombre ponemos
con ancho 0 la primera columna (que corresponde a CodMunicipio) y 4 cm en la
segunda (Nombre). Si quisiéramos ver también el valor de CodMunicipio
podemos dar un valor mayor de cero a la primera columna.
- Ancho de la lista. El ancho que tendrá la lista al
introducir un dato en el campo CodMunicipio de la tabla Centros.
- Limitar a lista. Limita el tamaño de la lista a la
tabla de Municipios.

- Una
vez establecidas todas estas propiedades de la búsqueda ya podremos ver el nombre
del municipio en lugar de su ID cuando vayamos a meter un valor en CodMunicipio
en la tabla Centro.
- Sin embargo ha de quedar claro que lo que de verdad queda
incluido en dicho campo es el ID del municipio, no su nombre. El nombre solo
lo muestra para que no tengamos que aprendernos los ID de cada Municipio.
|
-
Cómo se hace
- Podemos pasar a Access los parámetros de una consulta a través de un formulario, de manera que la búsqueda le sea mucho más fácil al usuario.
- Veremos como hacerlo mediante un ejemplo que usa una base de datos de compact disc de música.
- Mediante un formulario, se le pedirá al usuario que elija un estilo musical de los existentes en la base de datos. Se buscarán y mostrarán los registros de CDs que pertenecen al estilo seleccionado.
Pasos a seguir:
- Crear una consulta en la base de datos
- Crear un formulario en la base de datos
|
-
Pasos a seguir
- Para realizar la conversión necesitamos tener instalado Access 2.0, ya que no se pueden importar datos de Access 1.0 desde Access 97/2000/XP.
- Renombramos el archivo de Infonet .net a .mdb.
- Abrimos Access 2.0 y creamos una nueva base de datos vacía.
- En el menú Archivo seleccionamos Importar.
- Seleccionamos Microsoft Access como origen de datos.
- Indicamos la base de datos origen (Es decir, el archivo .net que renombramos a .mdb).
- Se nos abre una ventana para que indiquemos que objetos de la base de datos origen queremos importar. Importamos todas las tablas del origen. Solo puede hacerse una a una.
- Guardamos la base de datos que hemos creado en Access 2.0 con las tablas importadas.
- Abrimos la base de datos creada en Access 2.0 con Access 97/2000/XP y elegimos Convertir cuando nos pregunte si la abre o la convierte a una versión más reciente de Access.
|
Página generada automáticamente desde la Base de Datos: BDatosVarios/ el 27/5/2008 19:49:08