ANUNCIO


HAGO FOTOGRAFÍAS POR ENCARGO.
SI NECESITAS REALIZAR ALGUNA FOTO O REPORTAJE,
PONTE EN CONTACTO CONMIGO A TRAVÉS DEL
CORREO ELECTRÓNICO Y HABLAMOS: angeltejedorlopez@gmail.com

TAMBIEN DOY CLASES PERSONALIZADAS
DE FOTOGRAFÍA A DOMICILIO (ZONA MADRID CAPITAL)

PRECIOS ASEQUIBLES

lunes, 16 de mayo de 2011

CREACIÓN DE UNA BASE DE DATOS FOTOGRÁFICA SENCILLA (III)

TERCERA ENTREGA (Las Consultas)
En la entrega anterior, ya viste la forma de dotar a los campos de algunas propiedades para que éstos se comporten como queremos, y también viste la forma de crear una relación de uno a varios entre las dos tablas, así todas las fotos que des de alta en la base de datos, estarán organizadas en sus correspondientes carpetas. Pero ¿qué ocurre cuando se ha introducido un mogollón de fotos en la base? ¿Cómo busco la foto que me interesa? ¿Tengo que estar mirando carpeta por carpeta para localizar la foto? La respuesta es no, ya que para eso están las consultas, que es lo que vas a aprender en ésta entrega: A crear consultas personalizadas, que te van a permitir realizar búsquedas en la base de datos. Como yo no se las preferencias de cada cual a la hora de buscar u ordenar las fotos, lo que voy hacer, inicialmente, es explicar como crear dos consultas, para que cuando sepas como hacerlas, puedas usar tus propios criterios de búsqueda y por extensión tus propias consultas. La primera se encargará de localizar una carpeta determinada, siendo tú el que le diga a Access que carpeta quieres encontrar. La otra consulta se encargará de buscar las fotos que estén disparadas con un objetivo determinado, o distancia focal, que por supuesto serás tú quien le diga a Access que distancia focal es la que quieres ver. Sabiendo como crear éste tipo de consultas, luego podrás crear una consulta adaptada a tus necesidades, más que nada por si tienes la necesidad de crearte otra consulta que busque las fotos por otro criterio. Así podrás hacerla sin que tengas mayores problemas.
Pero para que lo tengas más claro, ¿qué crees según tú qué es una consulta? Pues una consulta no es ni más ni menos que una pregunta que se realiza a una o varias tablas, o a otra consulta, para obtener un resultado determinado. Es decir, que la consulta te muestra la respuesta a esa pregunta por medio de un listado, mostrando los datos que cumplen el criterio de la pregunta. Ese listado se denomina “Hoja de datos dinámica” y es muy similar a como se ven los datos en una tabla.
CREACIÓN DE LA PRIMERA CONSULTA

Teniendo más o menos claro que es una consulta, abre la base de datos “Datos fotográficos”, porque empezamos ya mismo. Si has seguido las dos entregas anteriores, al abrir la base de datos deberías tener en tu pantalla lo mismo que ves en la captura 1. En esa captura verás, señalado con una flecha azul, el panel de exploración con las dos tablas creadas anteriormente. Y señalado con una flecha roja, donde tienes que hacer clic para empezar a crear tú primera consulta. Cuando hayas clicado en “Crear”, verás una pantalla igual a la que ves en la captura 2. Si observas la captura 2, verás que en la parte inferior (donde están las pestañas) hay cuatro grupos: “Tablas”, “Formularios”, “Informes” y “Otros”. De esos cuatro grupos solo te interesa el grupo Otros. Y dentro de ese grupo el botón llamado “Diseño de consulta”. Flecha roja en la captura 2.

Cuando hagas clic en ese botón, Access te mostrará una ventana en la que en primer término, verás una ventana que tiene tres pestañas: “Tabla”, “Consultas” y “Ambas”, y la que está activa por defecto es la pestaña Tablas, mostrándote las dos tablas que tiene la base de datos. Selecciona la tabla Carpetas y haz clic en el botón “Agregar” y haz lo mismo con la tabla Fotografías. Después cierra esa ventana y tendrás lo que puedes ver en la captura 3. ¿Qué es lo que estas viendo? Pues sencillamente en la parte superior de la consulta las dos tablas agregadas, mostrándote la relación que hay entre ellas. Y en la parte inferior la cuadrícula “QBE”, que es donde se diseña la consulta. Visto así parece cantidad de difícil pero tranquilo que no lo es. Lo primero que tienes que tener claro que es lo que quieres que te muestre la consulta cuando se ejecute, es decir, que pregunta le vas hacer y que resultados quieres que te muestre.
Por ejemplo, para ésta primera consulta vamos hacer que cada vez que se ejecute, Access te muestre un resumen de lo que contiene una carpeta y la ubicación de ésta en el disco duro. Vamos a ello. Haz doble clic con el botón izquierdo de ratón sobre el campo NOMBRE DE LA CARPETA, de la tabla Carpetas y verás que automáticamente el campo seleccionado ha quedado incrustado en la primera cuadrícula de la consulta. Vuleve hacer doble cilc sobre el campo NÚMERO DE FOTOS de la tabla Carpetas y haz lo mismo sobre el campo UBICACIÓN. Verás que en ese momento los tres campos de la tabla Carpetas ocupan las tres primeras cuadrículas de la consulta. También puedes hacer clic, con el botón izquierdo del ratón, sobre el campo, y sin soltar el botón arrastrar el ratón hasta una fila libre de la cuadrícula "QBE" y después soltar el botón. El resultado será el mismo. De la tabla Fotografías, no he insertado ningún campo, paro si quieres puedes insertar el campo que estimes oportuno de dicha tabla. Puedes incluir uno, dos, tres o los que quieras, pero recuerda que se trata de un resumen.
Si has seguido las instrucciones, deberás tener, en la cuadrícula “QBE”, lo mismo que muestra la captura 4. Es decir que has insertado en la consulta tres campos de la tabla Carpetas.
Ahora cada vez que ejecutes la consulta, Access te mostrará un listado de todas las carpetas que tengas grabadas en la base de datos. Sin embargo eso no es lo que se había pensado en un principio ¿verdad? Lo que se pretendía es que Access te mostrara el resumen de una carpeta concreta, y no de todas las carpetas así es que ¿cómo podemos solucionarlo? Pues creando un parámetro. Ésta consulta, tal y como está, se denomina “Consulta de selección” que es lo que Access crea por defecto cada vez que se diseña una consulta. Lo que vas a hacer ahora es decirle a Access que lo que realmente quieres es una “Consulta paramétrica”, es decir, que vas a ser tú el que le de a Access el dato que le falta para que te muestre lo que tú quieres ver. Vas a crear un parámetro. Para ello posiciónate en la fila “Criterios” del campo NOMBRE DE LA CARPETA, señalado con una flecha roja en la captura 5, y teclea l
o siguiente: [Introduce el nombre de la Carpeta], con los corchetes cuadrados incluidos. Para sacar los corchetes cuadrados, tienes que pulsar la tecla “ALT GR” y sin soltarla pulsa sobre la tecla del signo “Elevado a”, que está al lado de la tecla “P”. El corchete de cierre está en la tecla de la derecha. Si todo ha ido bien deberías tener tu consulta igual a lo que muestra la captura 5. 
Y ya está, ya has terminado de hacer la consulta. Sencillo ¡eh!. Ahora ya solo queda cerrarla, guardar los cambios y darle un nombre descriptivo.  Dado que es una consulta resumen, un nombre que le puede ir bien puede ser “Resumen de carpetas”. Si quieres darle otro nombre pues ya sabes, el que más te guste o te apetezca. Ahora en el Panel de exploración habrá aparecido un nuevo objeto, una nueva consulta llamada Resumen de carpetas. Prueba a ejecutarla haciendo clic sobre ella con el botón izquierdo del ratón, y verás como en la pantalla te aparece un mensaje igual que el que puedes ver en la captura 6. Evidentemente aunque teclees el nombre de una carpeta, y hagas clic en Aceptar, Access no mostrará nada porque la base de datos no tiene, todavía, ningún registro, pero en el caso de que lo tuviera, Access te mostraría la carpeta solicitada siempre y cuando estuviese grabada en la base de datos, claro. ¡Ah! se me olvidaba, Access es muy puñetero en éste tipo de cuestiones, me refiero a que en el momento de teclear el nombre de la carpeta, en la ventana paramétrica de la consulta, como no teclees exactamente el mismo nombre con el que grabaste la carpeta, Access no mostrará nada, sin embargo puedes teclear el nombre en mayúsculas o en minúsculas, que a Access eso le da igual. Mientras sean los mismos caracteres con los que grabaste el nombre de la carpeta a Access le vale.

CREACIÓN DE LA SEGUNDA CONSULTA
Los pasos para la creación de la segunda consulta son prácticamente los mismos, solo cambian, lógicamente, los campos que vayas a mostrar. Como ésta segunda consulta lo que va a presentar son las fotos que han sido disparadas con una determinada distancia focal, pues ese será el campo por el que deberás guiarte, así es que haz clic en donde indica la flecha roja de la captura 1 para que te aparezca la pantalla de la captura 2. Y en esa pantalla haz clic donde señala la flecha roja (captura 2). Access te mostrará la ventana de la captura 7. Si ahora haces clic en la pestaña "Consultas" verás que aparece reflejada la consulta que acabas de crear. Eso significa que podrías crear otra consulta basada en la primera consulta que creaste. Pero como no es el caso clica sobre la pestaña “Tablas” y agrega las dos tablas a la nueva consulta. Como antes solo tienes que seleccionar la tabla Carpetas y pulsar el botón “Agregar” y repetir lo mismo con la tabla “Fotografías”. Cuando hayas terminado de agregar las tablas, cierra la ventana para continuar.
Los campos que vas a incluir en ésta nueva consulta son los siguientes: DISTANCIA FOCAL, CÓDIGO FOTO, FECHA DE LA FOTO, NOMBRE DEL ARCHIVO, SENSIBILIDAD ISO, APERTURA DE DIAFRAGMA, VELOCIDAD DE OBTURACIÓN, TAMAÑO ARCHIVO y OBSERVACIONES. En ese orden y todos ellos de la tabla “Fotografías”. De la tabla “Carpetas” solo vas ha incluir el campo UBICACIÓN, más que nada porque si en un momento dado te interesa ver una determinada foto del listado que Access te mostrará al ejecutar la consulta, puedas abrir la carpeta donde está ubicada la foto haciendo clic en el enlace. Recuerda que el campo UBICACIÓN es del tipo hipervínculo. Para incluir los campos en la consulta, solo tienes que hacer doble clic sobre el campo correspondiente y listos. Se trata de repetir los pasos que diste para crear la primera consulta, pero variando algunos de los campos a incluir en ésta nueva consulta. Cuando ya tengas todos los campos incluidos, posicionate en la fila criterios del campo DISTANCIA FOCAL y teclea lo siguiente: [Introduce la distancia focal que quieres consultar] o el texto que se te ocurra, pero recuerda que deberás encerrarlo entre corchetes cuadrados, porque si no Access detectará un error y la consulta no funcionará. Es decir, que la cuadrícula del campo DISTANCIA FOCAL te tiene que quedar como ves en la captura 8.
Cierra ésta nueva consulta y a la pregunta de si quieres guardar los cambios, contesta afirmativamente y dale el nombre de “Distancia focal”, o el que se te ocurra, y haz clic en “Aceptar”. Ahora tu base de datos, en el Panel de exploración, debe tener los mismos objetos que ves en la captura 9, o sea, dos tablas: Carpetas y Fotografías, y dos consultas: Distancia focal y Resumen de carpetas.

Ya ves lo sencillo que es crear consultas de selección en Access, bueno en éste caso las dos consultas son paramétricas, pero ambas parten de una consulta de selección. Acuérdate que dependiendo de lo que quieras que la consulta te muestre, deberás incluir un campo u otro independientemente de la tabla a la que pertenezca ese campo. Por ejemplo puedes crear una consulta que muestre las fotos que estén disparadas en una fecha determinada. También puedes hacer una consulta que muestra las fotos disparadas con una determinada velocidad de obturación. Solo tienes que teclear la condición en la fila “Criterios” del campo correspondiente.
Aunque no voy a poner deberes como en el colegio, si que me gustaría plantearte un reto: Aparte de las dos consultas que has creado, Imagina que quieres que la base de datos te muestre las fotos que estén disparadas a 1/125 avo de segundo. ¿Cómo procederías? ¿Serías capaz de crear una consulta que al ejecutarla, te muestre las fotos que están disparadas a esa velocidad? Solo te voy a dar un par de pistas: 1º Debes usar la fila “Criterios” del campo VELOCIDAD DE OBTURACIÓN. 2º, Debes usar el operador matemático igual (=) y no usar los corchetes cuadrados. Anímate a conseguirlo y si no te sale en la próxima entrega te daré la solución.
Ahora relájate y repasa lo que has hecho, porque en la tercera parte te vas a meter de lleno con los Formularios, que ya verás lo sencillo que es crearlos. Además, con un formulario tu base de datos tendrá un aspecto profesional y será más intuitivo y atractivo introducir los datos en los diferentes campos así como su manejo. Mucho mejor que introducir los datos en una simple y aburrida hoja de datos, como es la vista predeterminada de las tablas. Y ya sabes, que si tienes alguna duda sobre la construcción de la base de datos, puedes contactar conmigo he intentaré aclarártela. Hasta la próxima.

Ángel Tejedor
Un aficionado a la fotografía