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

sábado, 23 de abril de 2011

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

SEGUNDA ENTREGA
En la entrega anterior, vistes como se creaban las dos tablas que va a tener tu futura base de datos, y quedamos en establecer las propiedades de los campos de la tabla Fotografías y de crear las relaciones entre las dos tablas. Y eso es lo que vas a aprender en ésta entrega. Primero establecerás las propiedades de los campos de la tabla Fotografías, para que la base de datos se comporte como queramos. Y segundo, aprenderás como relacionar las dos tablas para que cuando estés consultando una carpeta, automáticamente te muestre los datos de las fotos que contiene, así podrás buscar una carpeta determinada y una vez encontrada, sin salirte de la ella, te podrás mover por todos los registros (fotos) que contiene. Aparte de poder realizar búsquedas individuales de fotos concretas, independientemente de en que carpeta se encuentren. Pero primero vamos con las propiedades de los campos.
ESTABLECER LAS PROPIEDADES DE LOS CAMPOS DE LA TABLA FOTOGRAFÍAS
Lo primero de todo es abrir la base de datos "Datos Fotográficos", o el nombre que la hayas dado, y para ello puedes hacer clic en su icono que estará en la carpeta donde la guardaste, o abrir directamente Access y después la base de datos. Una vez abierta debes hacer clic, con el botón secundario del ratón, sobre la tabla Fotografías en el Panel de Exploración. Se abrirá un menú del que deberás elegir la opción "Vista diseño" para abrir la tabla en esa vista. Si seguiste la entrega anterior, tu tabla tendrá una apariencia similar a la que puedes ver en la imagen de la captura 1. 


Haz clic sobre el primer campo, CÓDIGO FOTO, para que puedas ver sus propiedades en la parte inferior de la ventana. Al igual que hiciste en la entrega anterior, solo vas a usar la primera y la última propiedad. Haz clic sobre la propiedad "Tamaño del campo" y fíjala en 5 caracteres, uno más que en el campo CÓDIGO CARPETAS de la tabla Carpetas. Ésto es así porque para codificar las fotos, yo suelo emplear un sistema que me va bien. Por ejemplo, tengo una foto cuyo nombre es Plátano de sombra. Pues la codificación que yo uso para esa foto es "PS1", es decir la primera letra de plátano, la primera letra de sombra y el número 1. Son tres caracteres, pero si tienes una foto con un nombre compuesto, como por ejemplo "Atardecer en el Valle del Jerte" pues la codificación sería "AVJ1", con lo que es muy posible que tengas que emplear hasta 5 caracteres. Pero ya digo que es un sistema que empleo yo, cada cual puede emplear el suyo propio y poner en la propiedad "Tamaño del campo", el número que considere oportuno. Seguimos, en la última propiedad "Alineación del texto", y establécela en Centro, para alinear el texto en el centro de la caja de texto. En el siguiente campo, CÓDIGO CARPETA no establezcas nada y déjala tal cual, más adelante explicaré por qué. En el campo FECHA DE LA FOTO, vas a usar las propiedades "Máscara de entrada" y "Alineación del texto". La propiedad máscara de entrada es muy útil para cuando necesites que los datos tengan que ser introducidos de una forma determinada. Dado que se trata de un campo que va almacenar fechas, al establecer de antemano de que forma hay que introducir los datos, no hay posibilidad de que éstos se introduzcan de forma errónea. Así es que posiciónate en la propiedad máscara de entrada y teclea lo siguiente sin las comillas: "00/00/0000;0;_". Al teclear ésta máscara, estás obligando a Access a que haga dos cosas: 1º Al usar ceros en la máscara es obligatorio teclear números, por lo tanto no admitirá letras en ese campo. Y 2º, de forma automática cada vez que introduzcas una fecha, solo tendrás que teclear los números de la fecha, sin las barras inclinadas. Access se encarga de ponerlas. Ve ahora a la última propiedad, "Alineación del texto", y establecela a Centro. El siguiente campo NOMBRE DEL ARCHIVO, solo hay que usar la propiedad "Tamaño del campo", y teclear como mínimo 30, para indicarle a Access que en ese campo se van almecenar hasta 30 caracteres. En el campo DISTANCIA FOCAL, en la propiedad "Tamaño del campo", teclea 4, porque no creo que ninguno de nosotros tengamos un objetivo cuya longitud focal esté por encima de las cuatro cifras, y en la propiedad "Máscara de entrada" teclea, sin las comillas "0999;0;_". En el campo SENSIBILIDAD ISO, en la propiedad "Tamaño del campo", teclea 4 y en la propiedad "Valor predeterminado" teclea 100, así cada vez que tengamos que introducir un dato, como la mayoría de las fotos que se hacen (por lo menos en las mías así es) el valor ISO es 100. De ésta forma, cada vez que introduzcas datos en la base, en ese campo no hará falta teclear nada si el valor ISO de la foto es 100. Que es un valor distinto, pues con teclear el valor correspondiente es suficiente. En el campo APERTURA DE DIAFRAGMA, tecleamos 5 en la propiedad "Tamaño del campo", ya que no es probable que haya un valor de diafragma que supere los cinco caracteres. Y en la propiedad "Alineación del texto", la fijamos en centro. En el campo VELOCIDAD DE OBTURACIÓN, en la propiedad "Tamaño del campo" teclea 7. También vas a usar la propiedad "Máscara de entrada" y en ella teclea sin las comillas "0/0999;0;_". Y en la propiedad "Alineación del texto", ponla a Centro. En el campo TAMAÑO ARCHIVO, cambia, en la columna "Tipo de archivo" a Número. Después cambia la propiedad "Formato" a Número general, y en la propiedad "Alineación del texto" ponla en Centro. Por último, en el campo OBSERVACIONES, solo vas a cambiar el tipo de dato. Así es que en la columna "Tipo de datos", selecciona de la lista la opción Memo. De ésta forma, en ese campo, podrás escribir una descripción referente a la foto, algo más extensa que en un campo del tipo texto, porque mientras en éste solo se pueden escribir 255 caracteres, en un campo del tipo Memo podrás escribir más de 65.000 caracteres. El último campo como lo que va a contener es una miniatura de la foto, lo único que hay que cambiar es el "Tipo de dato". Para ello haz clic en esa columna y elige de la lista la opción Datos adjuntos. Si por algún casual te saliera un mensaje diciendo que no se puede establecer el tipo de datos, borra el campo, cierra la tabla guardando los cambios y vuelve abrirla haciendo clic sobre ella con el botón secundario del ratón y eligiendo "Vista diseño". Teclea MINIATURA, en una línea libre de la columna Nombre del campo, y elige, en la columna Tipo de datos, la opción Datos adjuntos, verás como ahora Access no te pone ninguna pega.
Antes de continuar me parece importante que comprendas como funcionan las máscaras de entrada que antes has tecleado en algunos campos. Todas las máscaras de entrada que has tecleado funcionan más o menos igual, por lo que tomemos como ejemplo la máscara de entrada del campo VELOCIDAD DE OBTURACIÓN. Esa máscara tiene el formato 0/0999;0;_. Como las velocidades de obturación son fracciones de segundo, éstas se representan como 1/125 avo de segundo, por ejemplo. Para no tener que estar tecleando todos los caracteres, se pone una máscara de entrada con los caracteres especiales. En éste caso la barra inclinada y el guión bajo. Los dos primeros caractéres de la máscara son ceros, ésto es así porque al poner los ceros le estamos diciendo a Access que esos dos caractéres son obligatorios y además tienen que ser números, por lo que si los omites o introduces letras, Access no te dejará continuar y te lo hará saber con un mensaje. Los demás caracteres, los nueves, son caracteres opcionales así si por ejemplo tienes que teclear una velocidad de obturación de 1/60 avo, solo tendrás que teclear el 1, el 6 y el 0. Al grabar el dato Access lo interpretará como 1/60.
Y con ésto ya has terminado de establecer las propiedades de los campos. Si lo has hecho bien tu lista de campos será igual a lo que muestra la captura 2. Cierra la taba guardando los cambios y habrás concluido la creación de las dos tablas, por lo que en el panel de exploración deberás tener dos tablas creadas: La tabla Carpetas y la tabla Fotografías.
ESTABLECER LAS RELACIONES
En la primera parte ya dije que había que crear una relación entre las dos tablas para que la base de datos funcione correctamente, de ésta forma cada vez que des de alta una carpeta, podrás introducir los datos de las fotos que va a contener esa carpeta y Access sabrá que esas fotos están relacionadas con esa carpeta en concreto. Vamos con las relaciones. En la parte superior de la ventana de Access verás las cinco pestañas que forman parte de la "Cinta de opciones" . De esas cinco pestañas la que ahora te interesa es la llamada "Herramientas de base de datos". Si haces clic sobre ella podrás ver lo que muestra la captura 3.

En la captura 3, y señalado con una flecha roja, está el botón "Relaciones" que es el que ahora te  interesa, por lo que solo tienes que hacer clic sobre él y te aparecerá una ventana como la que puedes ver en la captura 4.
En esa captura puedes ver tres pestañas "Tablas", "Consultas" y "Ambas". Como solo tienes dos tablas, eso es lo que apaerecerá, las dos tablas. Si haces clic en la pestaña Consultas, verás que no hay nada. Selecciona la tabla Carpetas y pulsa el botón "Agregar". Haz lo mismo con la tabla "Fotografías" y cierra esa ventana. En ese momento tendrás en la ventana Relaciones las dos tablas agregadas con sus respectivos campos. Ahora es cuando vas a crear la relación, para ello haz clic, con el botón izquierdo del ratón, sobre el campo CÓDIGO CARPETA de la tabla Carpetas, y sin soltar el botón del ratón, arrástrale hasta el campo CÓDIGO CARPETA, de la tabla fotografías y suelta el botón. Por si no te ha quedado clara la explicación te he incluido un pequeño vídeo de como hacerlo.

video

Observa la imagen 5. Es la ventana "Modificar relaciones". En el vídeo has visto que se han señalado las opciones "Exigir integridad referencial" y "Actualizar en cascada los campos relacionados", las que en la imagen 5 están señaladas con una flecha verde y azul respectivamente. Ambas casillas hay que marcarlas por un motivo: Como es una base de datos con dos tablas relacionadas, cuando se establece dicha relación, una tabla siempre es la tabla principal y la otra es la tabla relacionada. En éste caso la tabla principal es la tabla Carpetas, y la tabla relacionada es la tabla Fotografías. Al exigir la integridad referencial y marcar la casilla de actualizar los campos en cascada, le estas diciendo a Access que si la persona que use la base de datos intenta eliminar una carpeta, no le deje hacerlo a menos que antes elimine las fotos que contiene esa carpeta. De la misma manera cada vez que se cambie algún dato en las fotografías que contiene la carpeta, ésta se actualice con los nuevos datos. Así te aseguras que no puedas eliminar por error ninguna carpeta y con ello cargarte también las fotos que contiene. Ojo, no es que elimines la carpeta y las fotos del disco duro, lo que ocurre es que la eliminarás de la base de datos, por lo que tendrás que volver a teclear de nuevo todos los datos de la carpeta y de las fotos que contuviese. Y creeme que ese es un proceso muy tedioso. Por ese mismo motivo la otra casilla, "Eliminar en cascada los registros relacionados", se deja sin marcar, porque si por la razón que sea, eliminas alguna foto de la carpeta por error, eliminarás todas las fotos de la carpeta.
Una vez establecida la relación, haz clic en el botón "Crear" de la ventana "Modificar relaciones" y la relación quedará establecida como una realción del tipo uno a varios. Observa la captura 5, en ella puedes ver, señalada con una flecha azul, la representación gráfica de la relación creada por medio de una línea, en la que en el extremo izquierdo hay un 1 (indicando la relación uno) y en el extremo derecho está el símbolo de infinito (indicando la relación varios). Por último cierra la ventana "Relaciones" y si Access te pregunta si quieres guardar los cambios, responde afirmativamente y listos. Ahora tendrás las dos tablas de tu base de datos realcionadas. Y ya sabes que si tienes alguna duda puedes contactar conmigo para aclarártela.
En la próxima entrega aprenderas a crear las consultas, que son las que te van a permitir buscar las fotos conforme a unos determinados criterios, que por supuesto estableceras tú mismo en función de tus necesidades.
Ángel Tejedor
Un aficionado a la fotografía 

3 comentarios:

Anónimo dijo...

Espero con impaciencia el resto del curso. Qué bueno! llevo años (y no exagero), intentando crear mi base de datos para mis fotos. Gracias!!!

Anónimo dijo...

Espero con impaciencia el resto del curso. Qué bueno! llevo años (y no exagero), intentando crear mi base de datos para mis fotos. Gracias!!!

AndresJimeno dijo...

Gracias por explicarlo de una forma clara. Me gusta tu blog.