Red de conocimiento informático - Material del sitio web - ¿Cómo mostrar una imagen almacenada en un campo BLOB? Detallado?0?3

¿Cómo mostrar una imagen almacenada en un campo BLOB? Detallado?0?3

showimges.asp 'Mostrar imágenes individualmente en el navegadorlt; % @ LANGUAGE="VBSCRIPT" % gt; % Respuesta Expires = 0 Respuesta TRUE. information Response. ContentType = "image/gif" 'Establece el encabezado HTTP en image/gif, lo que indica que la información de la imagen se transmitirá Set cn = Server ect("ADODB. Connection") ' Según el nombre de la fuente de datos especificada. (myDSN) Saque los datos cn. Abra "DSN=myDSN; UID=sa; PWD=; DATABASE=pubs" Establezca rs = cn Ejecutar("SELECCIONE foto DE personas DONDE id=' 3302' ″) Respuesta. BinaryWrite rs. ("foto") Respuesta. Fin % gt; Agregué el código anterior a la etiqueta IMAGEN para sacar la imagen de SQL Server e insertarla en la página HTML o ASP apropiada: showimges por qué a veces la imagen no se puede mostrar correctamente. ¿Pero a veces se puede mostrar? Creo que esta situación puede ocurrir cuando se usa MS Access o MS Visual FoxPro directamente como herramienta de entrada de datos de imagen. La causa principal es tal como dijiste al comienzo de la pregunta: "Recupere los datos binarios de la imagen GIF del campo BLOB Foto de SQL Server y construya un encabezado HTTP ..." El problema está aquí: en ASP, Se considera que desde BLOB Los datos de imagen recuperados del campo son un flujo de datos binarios en el formato GIF o JPEG original, y el navegador también reconoce que los datos obtenidos después del encabezado HTTP son un flujo de datos binarios en el GIF o JPEG original. Formato JPEG. En este momento, si el campo BLOB contiene otra información, la imagen no se mostrará correctamente. Porque, cuando se utiliza como herramienta de entrada de datos de imagen, al almacenar datos de imagen, la información OLE se agregará antes de los datos de imagen reales y luego se almacenará junta en el campo BLOB.