Red de conocimientos turísticos - Información de alquiler - ¿Cómo leer y escribir imágenes desde la base de datos mdb usando programación vb?

¿Cómo leer y escribir imágenes desde la base de datos mdb usando programación vb?

1. Muestre las imágenes requeridas en la base de datos.

Primero, agregue un control de datos y establezca sus propiedades DatabaseName y RecordSource.

strPath = Aplicación. ruta

If Right(strPath, 1) lt; gt "Entonces

strPath = strPath amp"\"

Mis datos.DatabaseName = strPath amp" EjemploDB .mdb " 'Dirección de la lista de datos

Mis datos. RecordSource = "Info " 'Nombre de la tabla

El segundo paso es agregar un control de imagen para mostrar la imagen y configurar su origen de datos y Propiedades de DataField Por ejemplo, en este caso: image 1.datasource = "Mis datos" e image 1.datafield = "Mis fotos". Luego configure otros controles con capacidades de enlace de datos para mostrar los demás contenidos que desee. En dos pasos, puede ejecutar el programa para mostrar los datos que desea.

2. Agregue la imagen a la base de datos.

Primero, use el control de datos. AddNew y haga doble clic en ella para agregar el siguiente código: MyData.Recordset.AddNew

Paso 2, especifique la ruta de la imagen 1. Imagen = Control de imagen Cargar imagen ("Ruta de la imagen después"). Al completar estos dos pasos, puede agregar la imagen a la base de datos.

Este método es el más simple y rápido, y la cantidad de código a escribir es pequeña, pero este método tiene ventajas en cuanto a velocidad de ejecución y flexibilidad. Ciertas limitaciones, adecuadas para principiantes y algunas aplicaciones simples. Si desea mostrar imágenes de manera flexible, el método que se describe a continuación puede ser más adecuado para sus necesidades.

Utilice código para almacenar y mostrar imágenes.

En comparación con el método, este método tiene una gran cantidad de código, pero la operación es flexible y puede cumplir con varias formas de operaciones. Es preferido por más programadores, pero implica relativamente más conocimiento y no solo requiere dominar el. base de datos Para el método de operación, debe comprender mejor la lectura y escritura de archivos binarios. Las operaciones básicas de bases de datos y archivos binarios se describen en detalle en muchos libros de referencia. Puede consultarlos antes de programar. las variables utilizadas en esta parte son las siguientes:

Dim RS como nuevo conjunto de registros ADODB

Chunk() como bytes

Const ChunkSize como entero = 2384

Divida el archivo de datos en números enteros y divida los bloques y fragmentos en números enteros

Dim MediaTemp como una cadena

Dim lngOffset, lngTotalSize tiene la misma longitud

Marcar I como un número entero

1. Mostrar las imágenes requeridas en la base de datos

El primer paso es abrir la base de datos y ver si hay algo que esté buscando. Si es así, continúe la ejecución; en caso contrario, salga.

RS. source = " select * from Info Where Name = ' " & Spartan Name & "

RS. ActiveConnection = " UID = PWD = DSN = TestDB"

RS . Open

Si RS.EOF entonces RS.cCose: Salir Sub

El segundo paso es leer los datos binarios largos, es decir, los datos de la imagen, y convertirlos en un archivo de imagen. El proceso es el siguiente.

MediaTemp = strPath amp" picturetemp.tmp "

Archivo de datos = 1

Abra MediaTemp para acceso binario y escriba como archivo de datos

lngTamañoTotal = RS! Mi foto. Tamaño real

Fragmentos = lngTotalSize \ ChunkSize

fragmento = lngTotalSize Mod ChunkSize

ReDim fragmento (fragmento)

Chunk() = RS ! Mi foto. GetChunk(Chunk)

Coloque el archivo de datos, Chunk()

Para i = 1 en Chunk

ReDim Chunk(ChunkSize)

Trozo() = RS! Mi foto. GetChunk(ChunkSize)

Coloque el archivo de datos, Chunk()

Siguiente I

Cierre el archivo de datos

El tercer paso Es cerrar la base de datos para que se pueda mostrar la imagen deseada.

RS. Cerrar

Salir del sub

Imagen 1 si MediaTemp = " ". imagen = cargar imagen (mediatemplate)

si imagen1. Imagen = 0, luego salga de Subj

2 Agregue la imagen a la base de datos.

Agregar una imagen almacenada a la base de datos es el proceso inverso al de mostrar la imagen. Siempre que domine la operación de visualización de imágenes, la operación de almacenamiento de imágenes se resolverá fácilmente. Los siguientes pasos se describen a continuación.

El primer paso es abrir la base de datos, el proceso es el siguiente:

RS. Fuente = "seleccione * de Información"

RS. CursorType = adOpenKeyset

RS. LockType = adLockOptimistic

RS. ActiveConnection = "UID=PWD=;DSN=TestDB"

RS. Abrir

El segundo paso es convertir la imagen que se almacenará en un archivo binario largo y almacenarlo en la base de datos. El proceso de operación es el siguiente.

RS. Agregar nuevo contenido

Archivo de datos = 1

Abrir strPathPicture para acceso binario, leer como archivo de datos

FileLen = LOF(archivo de datos)' en el archivo Longitud de los datos .

Si FileLen = 0, entonces: Cerrar archivo de datos: RS. Cerrar: Exportar conector

Chunks = FileLen \ ChunkSize

Fragmento = FileLen Mod ChunkSize

ReDim Chunks (Fragmento)

Obtener archivo de datos ,,bloquear()

RS! Mi foto. AppendChunk Chunk()

ReDim Chunk(ChunkSize)

Para i = 1 para Chunk

Obtener el archivo de datos, Chunk()

¡RS! Mi foto. AppendChunk Chunk()

A continuación

Cerrar el archivo de datos

El tercer paso, después de actualizar el registro, cerrar la base de datos y completar el almacenamiento de las imágenes de datos. en la base de datos.

RS. Actualización

RS. Cerrar

Establecer RS ​​= Ninguno

Ambos métodos tienen sus propias ventajas de uso y los lectores pueden elegir razonablemente según sus propias circunstancias.