3 maneras fáciles de insertar imágenes en base de datos de Access

Resumen:

hoy nuestro tema tutorial es sobre cómo mostrar la imagen en el formulario de la base de datos MS Access, tabla. A través de esta poste, puede explorar diferentes formas de insertar imágenes en la base de datos de Access.

¿Puede Microsoft Access almacenar imágenes?

Sí, puede almacenar imágenes en su base de datos de Access. Bueno, esta tarea es posible mediante el uso de archivos adjuntos que almacenan múltiples tipos de archivos en un solo campo.

Supongamos que ha creado una base de datos de contactos de trabajo. Al usar los archivos adjuntos, puede adjuntar uno o más currículums para el registro de cada contacto, y también puede agregar una inserción de una foto del contacto.

Las versiones anteriores de la base de datos de MS Access utilizan una tecnología conocida como Enlace e incrustación de objetos (OLE) para almacenar documentos e imágenes. Por defecto, para cada imagen y documentos, OLE genera un mapa de bits.

Estos archivos de mapa de bits son bastante grandes en tamaño aprox. 10 veces mayor que el archivo original. cuando el usuario ve su imagen y documento desde su base de datos, OLE muestra solo el mapa de bits, no el original. Aparte de eso, OLE necesita programas conocidos como servidores OLE para funcionar.

En contraste, los archivos adjuntos de MS Access almacenan el archivo adjunto en sus formatos nativos. Por lo tanto, no necesita instalar ningún software adicional para ver imágenes en su base de datos.

¿Cuáles son las técnicas para manejar imagen en  base de datos de Access?

Esta es una de las preguntas más frecuentes sobre la inserción de imágenes en la base de datos de Access. Bueno, hay muchas formas o técnicas para agregar imágenes en la base de datos de Access. entonces, hablemos de ellos uno por uno.

  1. En el campo OLE, almacene la imagen que desea insertar. Después de eso, para la visualización de la imagen, solo use el marco del objeto vinculado.
  2. Almacene la ruta de la imagen en el campo de texto y para mostrar la imagen utilice el control de imagen.
  3. Otra forma es almacenar la imagen en un mapa de bits de objetos grandes binarios (BLOB) con un campo OLE. Cuando lo necesite, simplemente extraiga la imagen que desee y utilice el control de imagen para verla fácilmente.

Toda la técnica mencionada aquí para insertar una imagen en la base de datos de Access también tiene algunas ventajas y desventajas. Entonces, hablemos de ellos en detalle.

Cómo insertar imágenes en la tabla de base de datos de MS Access a través de archivos adjuntos

Para usar archivos adjuntos en su base de datos de Access, primero debe agregar un campo de archivos adjuntos en al menos una sola tabla de su base de datos. MS Access proporciona dos formas de agregar dichos campos de archivos adjuntos dentro de su tabla de base de datos. Puede agregar campos de datos adjuntos en la vista Hoja de datos o en la vista Diseño. Aquí estamos intentando esto con la vista Hoja de datos.

Agregar un campo adjunto en la vista Hoja de datos

  1. Abra la tabla de la base de datos de acceso en la vista Hoja de datos y toque la primera columna en blanco disponible. No es tan difícil obtener una columna en blanco, solo busque las palabras “Agregar nuevo campo” en el encabezado de la columna.
  2. Ahora en la pestaña Hoja de datos, dentro del grupo Tipo de datos y formato, toque la flecha hacia abajo presente junto a Tipo de datos. Luego, toque el archivo adjunto

Para el campo adjunto, Access establecerá el tipo de datos. Coloque también un icono en la fila del encabezado del campo. La figura que se muestra es del nuevo campo Adjunto. Puede ver un icono de clip en la fila del encabezado del campo. No está permitido poner texto en la fila de encabezado del campo de adjunto.

Agregar un campo adjunto en la vista Hoja de datos

  1. Es hora de guardar todos los cambios que ha realizado.

Nota:

No está permitido convertir ningún campo nuevo en otro tipo de datos. pero si se produce algún error, puede eliminar el campo.

Agregar un archivo adjunto a una tabla

  1. En la tabla que tiene su campo adjunto abierto en la vista de hoja de datos. Haga un doble toque en el campo adjunto.

Esto abrirá el cuadro de diálogo Adjuntos como se muestra en la figura siguiente:

Agregar un archivo adjunto a una tabla

  1. Ahora haga clic en Agregar después de hacer clic en la opción Agregar, aparecerá el cuadro de diálogo Elegir archivo.
  2. Utilice la lista Buscar en para buscar el archivo / archivos que necesita insertar en su registro. Después de seleccionar el archivo, toque la opción Abrir.
  3. Ahora en el cuadro de diálogo Adjuntos, toque la opción Aceptar para agregar los archivos a su tabla.

Access agrega archivos con el campo y aumenta el número de archivos adjuntos de acuerdo con eso. La figura que se muestra a continuación muestra el campo con dos imágenes adjuntas:

Agregar un archivo adjunto a una tabla 2

  1. Repita el mismo paso siempre que necesite agregar archivos al campo actual o cualquier otro campo de la tabla de Access.

Cómo insertar imágenes en Access usando campos de objetos OLE

El objeto OLE es uno de esos tipos de datos que le ayuda a guardar fácilmente los archivos generados por otros programas, como hojas de cálculo de Excel, documentos de Word o gráficos. Esta sección le da la idea de cómo trabajar con los campos de objetos OLE.

Pasos para insertar imagen en Access usando campos de objetos OLE

Aquí estamos usando un nombre de tabla tblEmployees y un nombre de formulario frmEmployees que se creó previamente.

  1. Elija la tabla tblEmployees después y luego toque el botón Design.

Ahora inserte el campo OLE en esta tabla tblEmployees.

  1. Toque la primera fila de Nombre de campo en blanco que se encuentra después y luego escriba el texto “Foto”. Presione en la lista de flechas que contiene el Tipo de datos. Luego, de la lista de tipos de datos, elija el objeto OLE.

¡Buen trabajo, su campo de objeto OLE se ha creado ahora …!

  1. Ahora guarde todos los cambios. Para ver la tabla en la vista de hoja de datos, presione el botón Ver en la barra de herramientas.

Ahora estamos agregando algún objeto OLE en el registro de Maria Wyatt.

  1. Toque en cualquiera de los campos para seleccionar Maria Wyatt después y luego desplácese en la sección derecha. Toque el campo Foto para acceder al registro de Maria Wyatt y elija la opción Insertar »Objeto del menú.

Esto abrirá el cuadro de diálogo de “Insertar objeto” en su pantalla.

Para crear e insertar cualquier objeto nuevo, seleccione la opción “Crear nuevo”. Aparte de esto, simplemente haga clic en la opción “Crear desde archivo” para insertar un archivo ya existente.

insertar imágenes en Access usando campos de objetos OLE 1

  1. Aquí hemos elegido la opción “Crear desde archivo”. Entonces, después de elegirlo, debe asignar el nombre y el destino de ese archivo que debe insertar.

insertar imágenes en Access usando campos de objetos OLE 1

  1. Ahora toque la opción Examinar. Después de presionar esta opción, seleccione el archivo de imagen que necesita insertar en su documento.
  2. Una vez que lo obtenga, haga doble clic en él, por ejemplo: archivo Maria.bmp.

En el lado del botón “Examinar” puede ver una casilla de verificación “Enlace”. Esta casilla de verificación es para determinar si este objeto OLE, simplemente vinculado con la base de datos de Access o realmente incrustado en la base de datos.

insertar imágenes en Access usando campos de objetos OLE 3

Aquí dejamos esta casilla de enlace sin marcar, ya que deseamos incrustar gráficos en la base de datos.

  1. Después de completar el procedimiento, toque la opción Aceptar. Esto cerrará el cuadro de diálogo abierto y el acceso incrustará la imagen Maria.bmp en el campo Foto.

Pero el problema ocurre con estos campos de objetos OLE, es que no mostrará los objetos OLE nativos. Esa es la razón por la que necesita utilizar el formulario con los campos de objeto OLE para que funcione sin problemas.

  1. Ahora cierre el nombre de la tabla tblEmployees. Toque el ícono Formularios presente en la barra de Objetos. Presione frmEmployees form. Luego, toque la opción Diseño.

Ahora necesita agregar un nuevo campo de fotos en su formulario frmEmployees.

  1. Luego, toque el botón Lista de campos presente en la barra de herramientas. Puede seleccionar y arrastrar hacia abajo el campo Foto en cualquier lugar de su formulario de base de datos de Access.

Aparte de esto, puede mostrar la lista de campos para elegir ver >> Lista de campos presente en el menú.

No tiene que preocuparse por la posición para colocar el campo Foto del objeto OLE. Como, al usar cualquier control de formulario, el usuario puede cambiar fácilmente el tamaño y mover los campos de objetos OLE.

Veamos cómo aparece este campo de foto en la vista de formulario.

  1. Presione la opción Ver en la barra de herramientas para cambiar a la vista de formulario. Toque en la opción Navegación de registro siguiente hasta que obtenga el registro de Maria.

Yeh, ¡gran trabajo aquí es tu imagen insertada!

insertar imágenes en Access usando campos de objetos OLE 4

Cómo insertar imagen en Access por código VBA

En su base de datos de Access, haga un campo Memo para almacenar la Imagen. use el siguiente código para insertar la imagen en la base de datos de Access usando el código VBA:

Dim FN As Long
Dim FB

FN = FreeFile
Open “C:\Pict1.bmp” For Binary Access Read As FN
FileBinary = Space(LOF(FN))
Get #FN, , FB
Close #FN

‘Open RecordSet RS
rs.AddNew
rs(“ImgName”) = “Picture1”
rs(“ImgMem”) = FB
rs.Update

Para recuperar el archivo de imagen de Access:

Dim MPict
Dim FN As Long
‘Place an Image Control(Image1) on the Form
‘Open Recordset RS here

MPict = RS(“ImgMem”)
If Dir(“C:\Temp.bmp”) <> “” Then
Kill “C:\Temp.bmp”
End If

FN = FreeFile
Open “C:\Temp.bmp” For Binary Access Write As #FN
Put #FN, , MPict
Close #FN

Image1.Picture = LoadPicture(“C:\Temp.bmp”)

Inserte imagen en tabla MS Access / SQL usando Java

También puede insertar imagen en la tabla MS Access / SQL utilizando el programa Java. Para esto necesita hacer una tabla en su base de datos de Access. Hazlo como se muestra a continuación:

Definiciones de tabla:

Nombre de la tabla: : Img[InsertPicture.mdb]
Clave primaria: : cero
Clave extranjera : cero

Definición de columna:

Nombre de columna Tipo de datos
ID AutoNumber
Imágenes OLE Object

Descripción de la tabla:

Nombre de columna Descripción
ID Create AutoNumber for image id
Imagen Tipo de imagen “Objeto OLE”

Después de crear la tabla, ahora es el momento de crear el DSN. Utilice el siguiente código fuente de InsertPicture.java.

*/

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.SQLException;

public class InsertPicture

{

        public static void main(String[] args) throws Exception, IOException

        {

                Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

                String url=”jdbc:odbc:MyDsn”;

                Connection conn=DriverManager.getConnection(url);

                String INSERT_PICTURE = “insert into Img(ID,Image) values (?, ?)”;

                FileInputStream fis = null;

                PreparedStatement ps = null;

                try

                {

                        conn.setAutoCommit(false);

                        File file = new File(“laura.jpg”);

                        fis = new FileInputStream(file);

                        ps = conn.prepareStatement(INSERT_PICTURE);

                        ps.setString(1, “001”);

                        ps.setBinaryStream(2, fis, (int) file.length());

                        ps.executeUpdate();

                        conn.commit();

                }

                finally

                {

                        ps.close();

                        fis.close();

                }

        }

}

Luego, compile el código anterior utilizando el compilador javac. Al final ejecuta el programa.

C:\jdk1.4\bin javac InsertPicture.java
C:\jdk1.4\bin java InsertPicture

ahora verá que el código anterior funciona muy bien para insertar una imagen de nombre “laura.jpg” dentro de la tabla img.

Problemas asociados con la inserción de imágenes en la base de datos de Access

A veces, no es tan fácil insertar una imagen en la tabla de Microsoft Access. Si está insertando varias imágenes o cada uno de los archivos de imagen es bastante más grande, entonces automáticamente se genera el problema “Acceso a la base de datos demasiado grande”. Bueno, para resolver este problema, simplemente haga uso de la herramienta de utilidad incorporada Access compacta y repare. De lo contrario, muy pronto su base de datos se dañará.

En algún momento, el usuario también presenta un problema en el que sus formularios de acceso e informes no muestran imágenes. Para esto, consulte la siguiente publicación: Cómo corregir los formularios de Access y los informes que no muestran un problema de imagen

Desafortunadamente, si ya está lidiando con este problema de corrupción de la base de datos de Access. Luego, para recuperar sus datos cruciales, utilice una Access reparar y recuperación herramienta. Es la solución más destacada disponible para solucionar cualquier problema de corrupción ocurrido en el archivo de base de datos de Access accdb y mdb.

Envolver:

Pruebe todos los trucos antes mencionados para insertar imágenes en la base de datos de Access con cuidado. Si se atasca en cualquiera de las situaciones mencionadas anteriormente, intente la solución mencionada allí. Además del problema mencionado, si tiene algún otro problema en su base de datos de acceso, compártalo con nosotros en nuestra sección de Preguntas frecuentes. Intentaremos solucionarlo lo antes posible.

¿Aún tienes problemas? Arreglarlos con Stellar reparación para Access:

Este software asegura sin costura reparación y recuperación de la base de datos ACCDB y MDB. Es Restaura todos los objetos, incluidas tablas, informes, consultas, registros, formularios e índices, junto con módulos, macros, etc. Solucione los problemas de Microsoft Access ahora en 3 sencillos pasos:

  1. Descargue Stellar Access base de datos reparación herramienta calificado como Excelente en Cnet.
  2. Haga clic en la opción Examinar y Buscar para localizar la base de datos de Access corrupta.
  3. Haga clic en el botón Reparar para reparar y obtener una vista previa de los objetos de la base de datos.

Pearson Willey es escritor de contenido de sitios web y planificador de contenido de formato largo. Además de esto, también es un ávido lector. Por lo tanto, sabe muy bien cómo escribir un contenido atractivo para los lectores. Escribir es como una ventaja creciente para él. Le encanta explorar sus conocimientos on MS Access y compartiendo Tecnología blog.