• Viernes 19 de Abril de 2024, 13:35

Autor Tema:  Meter Imagenes En Sql Server  (Leído 2777 veces)

Shiquilla

  • Miembro MUY activo
  • ***
  • Mensajes: 188
  • Nacionalidad: es
    • Ver Perfil
    • http://www.songesoft.com
Meter Imagenes En Sql Server
« en: Martes 7 de Septiembre de 2004, 16:31 »
0
Buenas, tengo una tabla que tengo un campo de tipo Image. ¿Cómo meto una imagen a ese campo?

Muchas gracias.
« §hÿqµïllæ »

Shiquilla

  • Miembro MUY activo
  • ***
  • Mensajes: 188
  • Nacionalidad: es
    • Ver Perfil
    • http://www.songesoft.com
Re: Meter Imagenes En Sql Server
« Respuesta #1 en: Sábado 11 de Septiembre de 2004, 11:45 »
0
Bueno, me autorespondo a mi misma por si alguien tiene el mismo problema que yo.

He insertado imágenes en SQL Server por medio de un programa haciendo esto:

Para guardar la imagen
Código: Text
  1.     Dim rs As ADODB.Recordset
  2.     Dim mstream As ADODB.Stream
  3.     Set mstream = New ADODB.Stream
  4.     Set rs = New ADODB.Recordset
  5.  
  6.     rs.CursorType = adOpenDynamic
  7.     rs.LockType = adLockOptimistic
  8.  
  9.     rs.Open "SELECT * FROM Tabla WHERE Codigo=2", cn, adOpenKeyset, , adCmdText
  10.  
  11.     mstream.Type = adTypeBinary
  12.     mstream.Open
  13.     mstream.LoadFromFile "RutaDelArchivo"
  14.     rs.Fields("logo").Value = mstream.Read
  15.     rs.Update
  16.     rs.Close
  17.     mstream.Close
  18.  
  19.     Set rs = Nothing
  20.     Set mstream = Nothing
  21.  

Para coger la imagen y guardarla en el disco duro:
Código: Text
  1.     Dim rs As ADODB.Recordset
  2.     Dim mstream As ADODB.Stream
  3.     Set rs = New ADODB.Recordset
  4.     Set mstream = New ADODB.Stream
  5.  
  6.     rs.Open "Select * from Tabla Where Codigo = 2", cn, adOpenKeyset, adLockOptimistic
  7.  
  8.     mstream.Type = adTypeBinary
  9.     mstream.Open
  10.     mstream.Write rs.Fields("logo").Value
  11.     mstream.SaveToFile "c:\publogo.gif", adSaveCreateOverWrite
  12.  
  13.     rs.Close
  14.     Set mstream = Nothing
  15.     Set rs = Nothing
  16.  

(Esto lo he hecho con Visual Basic)

También, hay una función en SQL Server en el directorio BINN que se llama textcopy que sirve para lo mismo solo que lo haces desde el analizador de consultas. Os dejo un link por si lo quereis revisar.  
Meter imágenes con el programa textcopy de SQL Server

Bueno, de todas formas muchas gracias.

Saludos.
« §hÿqµïllæ »