Tamaño de mi base de datos

Tengo una base de datos de mis alumnos y con la versión 2010 de access he logrado poner un campo de Datos Adjuntos para visualizar las fotos de los mismos.
El problema es que no encuentro la manera de vincular las fotos sin que aumente el tamaño de la base de datos. Aclaro que no conozco nada de programación, solo manejo Access y muy limitadamente, más bien de haberme dado muchas veces contra la pared.. :)
Si algún conocedor del tema me puede ayudar lo agradecería mucho..
Saludos!
{"Lat":-34.6151266834622,"Lng":-58.392333984375}

1 Respuesta

Respuesta
1
Efectivamente, en Access 2010 al usar el tipo de datos "Datos adjuntos", como su nombre lo indica, adjuntará cualquier imagen o archivo hará que la base de datos haciendo crezca considerablemente en tamaño.
Dependiendo del número de registros y archivos adjuntos, la base de datos puede superar el 1Gb de capacidad o más!
También es importante definir: ¿Las imágenes son las fotos de los alumnos?
Como comentas que no conoces nada de programación en Access (BVA) puedes hacer algo muy sencillo.
*** Importante Crea un backup de tu base de datos porque vamos a mover y eliminar varias cositas ***
1. Elimina el campo donde tienes el tipo de dato "Datos adjuntos"
2. En la tabla donde quieres vincular las imágenes en vista diseño crea un campo que se llame RutaImagen y en tipo de datos pones "Texto".
3. En vista tabla deberás poner en este campo la ruta donde se encuentra la imagen (por registro). Por ejemplo:
C:\Fotosalumnos\Matricula00001.jpg
***Nota: Te recomiendo crear una carpeta donde tú quieras y no moverla de lugar y nombrar los archivos de manera que este procedimiento no sea tedioso.
4. Crea un formulario basado en esa tabla con todos los campos (incluyendo el que creamos llamado RutaImagen.
5. En vista diseño crea un control Imagen (Herramientas / Diseño / Controles) Si te sale una ventanan para elegir la imagen le das cancelar.
6. En el nuevo control de imagen que creaste dale clic derecho y te vas a propiedades. En esta ventana de propiedades del control vete a "Otras" y donde dice Nombre escribes "ImagenAlumno" sin comillas. En la ficha Formato puedes cambiar la manera en que se mosrará la imagen, es opcional.
7. Ahora abre propiedades del formulario. En la ficha eventos te vas a "Al activar registro" y le das clic en los tres puntitos que aparecen al final. Luego seleccionas Generador de Código. Y escribes esto:
If Not IsNull(Me.RutaImagen) Then
   Me.ImagenAlumno.Picture = Me.RutaImagen
Else
    Me.ImagenAlumno.Picture = ""
End If
8. Listo!
Guarda y en vista formulario verás las imágenes vinculadas.
Cuando vayas aprendiendo, puedes crear un botón para agregar la ruta de la imagen automáticamente.
Realiza con calma el procedimiento que te detallo y me dices si funcionó. Yo lo he probado con éxito.
Amigo tu respuesta no podía ser más exacta y útil..!
Eso es precisamente lo que necesitaba y me lo has aclarado en la forma más sencilla.
Antes de finalizar y puntuar tu desinteresada colaboración, y a riesgo de abusar de tu amabilidad, tengo 2 preguntillas:
1) Por favor, dame alguna pista sobre eso del botón para agregar la ruta de la imagen automáticamente.
2) De este modo que me has enseñado, efectivamente la base de datos no crece demasiado porque las fotos están en otro lado. Pero si yo quiero transportar la BD por ejemplo en un pendrive y abrirla en otra computadora, sin llevar las fotos para facilitar el transporte, ¿cómo hago para que no me salga un cartel de error en cada registro que abro desde el formulario? ¿Hay alguna manera de evitarlo?
De nuevo muchas gracias!
Que bueno que te sirvió para tu aplicación.
Otra sugerencia es que compactes y repares la base de datos con frecuencia (en tu base de datos abierta en Archivo / Información / Compactar y reparar base de datos)
Aunque siempre haz backup de tu aplicación porque en varios foros se ha comentado que en ocasiones "extrañas" este procedimiento puede dañar o "desaparecer" tu base de datos.
Respondiendo a tus preguntas:
1. Para crear un botón que te permita elegir ficheros, sí necesitas un poco más de conocimientos en Visual Basic para crear módulos generales.
Te recomiendo un excelente ejemplo que te puede ayudar en tu aplicación.
El autor de estos ejemplos es una persona muy reconocida en el mundo de Access: Emilio Sancha quien es MVP de Microsoft. Te paso la liga.
*** Recuerda simepre respetar las autorías de los códigos que vienen en los ejemplos ;)
http://www.mvp-access.es/emilio/Access/Descargas.asp
En las descargas buscas "Gestión Documental"
2. Con el mismo ejemplo anterior puedes adaptarlo para que puedas llevar tus archivos en un pendrive junto con tu aplicación.
Nota: Access 2010 tiene la novedad de utilizar "Imágenes Compartidas"
Aplica esto cuando tienes, por ejemplo, el logo de la aplicación en varios formularios e imágenes que las ocupas en repetidas ocasiones en diferentes objetos de la base de datos.
Taqmbién si sólo es una imagen por alumno, prueba en crear otro archivo de la foto original y bájale la resolución y cambia su tamaño para reducir el peso. Una foto de entre 1 y 1.5 Mb llegan a pesar después de esto hasta 10Kb (variable).
Por último en tu base de datos la adjuntas (como lo estabas haciendo en un principio)
Para modificar una imagen, puedes hacerlo rápido con el Picture Manager de Office.
Si tienes la paquetería de Office 2010 búscalo en Inicio / Todos los programas / Microsoft Office / Herramientas... / Office 2010 Picture Manager
Betomejia, muchas gracias por tu ayuda, me ha sido de mucha utilidad..!
Voy a revisar ese enlace que me dejaste.
A tu disposición en lo que pueda colaborar..
Saludos!
Nahualito

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas