Portal    Foro    Buscar    FAQ    Registrarse    Conectarse

Como Guardar Una Imagen En Sqlite En Un Campo Blob?

Como Guardar Una Imagen En Sqlite En Un Campo Blob?
Artículo
Responder citando    Descargar mensaje  
Mensaje Como Guardar Una Imagen En Sqlite En Un Campo Blob? 
 
buenas,

La idea de este post es descubrir como se hace y que quede de manual.

1- el primer paso es crear un campo de tipo blob, por ejemplo  con el nombre logo (logo empresa)

yo estoy armando una tabla InfoEmpresa para el programa taller con esta sentencia:

CREATE TABLE infoEmpresa (
"idInfoEmp" integer PRIMARY KEY NOT NULL,
"nombre" text,
"descripcion" text,
"cel" varchar(32),
"tel_fax" varchar(32),
"direccion" text,
"mail" varchar(64),
"web" text,
"twitter" varchar(64),
"facebook" text,
"youtube" text,
"logo" blob)


algo que me pregunto aquí.... ese sentencia no me convence pues solo habrá una fila que solamente cambiara los datos (como debería ser la sentencia para esa tabla?)


2- como sigue?.....



 
v3ctor - Ver perfil del usuario Enviar mensaje privado  
v3ctor [ Lunes, 28 Diciembre 2015, 17:37 ]
 


Como Guardar Una Imagen En Sqlite En Un Campo Blob?
Comentarios
Responder citando    Descargar mensaje  
Mensaje Re: Como Guardar Una Imagen En Sqlite En Un Campo Blob? 
 
encontré esto en el foro a ver que tal....

http://foro.gambas-es.org/viewtopic.php?f=3&t=846



 
última edición por v3ctor el Lunes, 28 Diciembre 2015, 18:39; editado 1 vez 
v3ctor - Ver perfil del usuario Enviar mensaje privado  
v3ctor [ Lunes, 28 Diciembre 2015, 18:39 ]
Responder citando    Descargar mensaje  
Mensaje Re: Como Guardar Una Imagen En Sqlite En Un Campo Blob? 
 


Recuerdo que ante la pregunta de guardar imágenes en una bd el profesor, de ese taller, recomendó guardar la ruta de la carpeta donde guardaríamos dichas imágenes y NO usar blob. Fue mi compañero de grupo quien hizo la consulta y desde ahí, cuando lo he requerido, es eso lo que hago. Las imágenes se guardan en una carpeta, cambiando el nombre por el Id del usuario más un número adicional que era la fecha y hora.

Por lo tanto nunca probé el blob y no sé cuales son problemas que se pueden encontrar (corrupción, decía mi amigo).

Saludos a todos.



 
vicr - Ver perfil del usuario Enviar mensaje privado  
vicr [ Martes, 29 Diciembre 2015, 01:58 ]
Responder citando    Descargar mensaje  
Mensaje Re: Como Guardar Una Imagen En Sqlite En Un Campo Blob? 
 
en este caso solo es guardar una sola imagen... que es la que corresponde al logo de una empresa x.

hasta ahora estoy viendo que el blob funciona guardando los datos en texto pero de una forma particular, (creo que los bytes tipo hexadecimal) y después se toman esos datos y se arma el archivo de nuevo en este caso una imagen.

voy a ver si hago un ejemplo de eso... jajaj pasa que ando con pereza últimamente jajajaj.

sigo investigando....



 
v3ctor - Ver perfil del usuario Enviar mensaje privado  
v3ctor [ Martes, 29 Diciembre 2015, 02:20 ]
Responder citando    Descargar mensaje  
Mensaje Re: Como Guardar Una Imagen En Sqlite En Un Campo Blob? 
 
aquí les dejo lo que descubri y un ejemplo:

 pantallazo_baseinfoempresa

Ejemplo de uso de campo Blob en sqlite3



 
v3ctor - Ver perfil del usuario Enviar mensaje privado  
v3ctor [ Martes, 29 Diciembre 2015, 03:39 ]
Responder citando    Descargar mensaje  
Mensaje Re: Como Guardar Una Imagen En Sqlite En Un Campo Blob? 
 
Ejemplo 2:

' gambas class file

' By postapase
'copia la base de datos del proyecto en tu usuario home
'para usar este ejemplo

Public MiConexion As Connection

Public Sub Form_Open()

  MiConexion = New Connection
  MiConexion.Type = "sqlite3"
  MiConexion.Host = User.Home
  MiConexion.Name = "EmpresaBD"
  MiConexion.Open

End

Public Sub Button1_Click()
  Dim Archivo As FILE
  Dim Fichero, contenido As String
  Dim Resultado, Resultado2, Resultado3 As Result
  Dim registros As Integer

  Dialog.Filter = ["*", "All Files"]
  Dialog.Title = "Seleccione el archivo a insertar en el campo Blob"

  If Dialog.OpenFile() Then Return

  If Not MiConexion.Opened Then MiConexion.Open
 
  Fichero = File.Load(Dialog.Path)

    Resultado3 = MiConexion.Exec("select count(*) as cantidad from infoEmpresa")
    
  If Resultado3!cantidad = 0 Then
    MiConexion.Exec("insert into infoEmpresa (nameArch) values(&1)", file.Name(Dialog.Path))
    Wait 0.1
    Resultado = MiConexion.Edit("infoEmpresa", "id=1")
    Resultado!logo = Fichero
    Resultado.Update
    Wait 0.1
    
    Resultado2 = MiConexion.find("infoEmpresa", "id=1")
    Contenido = Resultado2!logo
    
    Archivo = Open User.Home &/ "logo.png" For Create
    Write #Archivo, contenido, Len(contenido)
    Close #Archivo
  
    PictureBox1.Picture = Picture.Load(User.Home &/ "logo.png")
    
  Else
    Resultado = MiConexion.Edit("infoEmpresa", "id=1")
    Resultado!nameArch = File.Name(Dialog.Path)
    Resultado!logo = Fichero
    Resultado.Update
    
    Wait 0.1
    
    Resultado2 = MiConexion.find("infoEmpresa", "id=1")
    Contenido = Resultado2!logo
    
    Archivo = Open User.Home &/ "logo.png" For Create
    Write #Archivo, contenido, Len(contenido)
    Close #Archivo
  
    PictureBox1.Picture = Picture.Load(User.Home &/ "logo.png")
    
  Endif
  
End


Otro ejemplo:

Ejemplo2_Blob(sqlite3)-0.1.tar.gz
Descripción:  
Descargar
Nombre del archivo: Ejemplo2_Blob(sqlite3)-0.1.tar.gz
Tamaño: 40.06 KB
Descargado: 82 veces
Ejemplo2_Blob(sqlite3)-0.1.tar.gz
Descripción:  
Descargar
Nombre del archivo: Ejemplo2_Blob(sqlite3)-0.1.tar.gz
Tamaño: 40.06 KB
Descargado: 82 veces
Ejemplo2_Blob(sqlite3)-0.1.tar.gz
Descripción:  
Descargar
Nombre del archivo: Ejemplo2_Blob(sqlite3)-0.1.tar.gz
Tamaño: 40.06 KB
Descargado: 82 veces




 
última edición por v3ctor el Martes, 29 Diciembre 2015, 15:20; editado 1 vez 
v3ctor - Ver perfil del usuario Enviar mensaje privado  
v3ctor [ Martes, 29 Diciembre 2015, 15:20 ]
Responder citando    Descargar mensaje  
Mensaje Re: Como Guardar Una Imagen En Sqlite En Un Campo Blob? 
 
otra opcion es guardar la imagen en base64  
en la base  de datos solo se necesita un campo de texto

en el basic del otro lado(.net) no es necesario pasar por el sistema de archivos
para mostrar la imagen

no tengo codigos de ejemplo  ahora
hagan backups  



 
última edición por codificador el Martes, 29 Diciembre 2015, 17:11; editado 1 vez 
codificador - Ver perfil del usuario Enviar mensaje privado  
codificador [ Martes, 29 Diciembre 2015, 17:10 ]
Responder citando    Descargar mensaje  
Mensaje Re: Como Guardar Una Imagen En Sqlite En Un Campo Blob? 
 
Me suena que hace un par de años subí un ejemplo de eso... pero no lo encuentro ahora.  



 
shordi - Ver perfil del usuario Enviar mensaje privado  
shordi [ Jueves, 31 Diciembre 2015, 13:10 ]
Responder citando    Descargar mensaje  
Mensaje Re: Como Guardar Una Imagen En Sqlite En Un Campo Blob? 
 
Shordi:

Citar:
Me suena que hace un par de años subí un ejemplo de eso... pero no lo encuentro ahora.  



Lo encontre en mi curso de gambas:
http://cursogambas.blogspot.com.es/...-guardar-y.html

el enlace del foro era este: http://foro.gambas-es.org/viewtopic.php?f=5&t=3355



 
jsbsan - Ver perfil del usuario Enviar mensaje privado  
jsbsan [ Jueves, 31 Diciembre 2015, 18:59 ]
Responder citando    Descargar mensaje  
Mensaje Re: Como Guardar Una Imagen En Sqlite En Un Campo Blob? 
 
Gracias Julio. No lo encontraba porque buscaba "blob" y no "binario"...    



 
shordi - Ver perfil del usuario Enviar mensaje privado  
shordi [ Viernes, 01 Enero 2016, 14:55 ]
Mostrar mensajes anteriores:    
 
Publicar nuevo tema  Responder al tema  Página 1 de 1
 
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 



 

cron