Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-02-2018
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
NULL
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 18
BlueSteel Va por buen camino
Guardar Imagen en SQL

Holas

Ando medio lento y necesito vuestra ayudita...

Quiero almacenar una imagen en un base de datos de SQL. Campo de tipo Image

Quiero traspasar la imagen que esta en un componente TImagen (sFot)
Cargue la foto en el TImagen con componente TOpenPictureDialog

Aqui el proceso para guardar el registro, en donde tambien quiero guardar la foto

DM_Datos : Formulario tipo DataModule
AQ_Insert : AdoQuery

Código Delphi [-]
     DM_Datos.AQ_Insert.Close;
     DM_Datos.AQ_Insert.SQL.Clear;
     DM_Datos.AQ_Insert.SQL.Add('Insert Into Socio(Soc_Rut,Soc_Nombre,Soc_APaterno,Soc_AMaterno,Soc_FecNac,Soc_Estado,Soc_Direccion,Soc_Poblacion  ,Soc_Comuna,Soc_Telefono,Soc_Celular,Soc_Email,Id_TipoSocio,Id_Categoria,Soc_FechaIngreso,Soc_Foto)'  );
     DM_Datos.AQ_Insert.SQL.Add('Values (:v01, :v02, :v03, :v04, :v05, :v06, :v07, :v08, :v09, :v10, :v11, :v12, :v13, :v14, :v15, :v16)');
     DM_Datos.AQ_Insert.Parameters[0].Value   := sRut.Text;
     DM_Datos.AQ_Insert.Parameters[1].Value   := sNom.Text;
     DM_Datos.AQ_Insert.Parameters[2].Value   := sPat.Text;
     DM_Datos.AQ_Insert.Parameters[3].Value   := sMat.Text;
     DM_Datos.AQ_Insert.Parameters[4].Value   := sNac.Date;
     DM_Datos.AQ_Insert.Parameters[5].Value   := 1;
     DM_Datos.AQ_Insert.Parameters[6].Value   := sDir.Text;
     DM_Datos.AQ_Insert.Parameters[7].Value   := sPob.Text;
     DM_Datos.AQ_Insert.Parameters[8].Value   := sCom.Text;
     DM_Datos.AQ_Insert.Parameters[9].Value   := sTel.Text;
     DM_Datos.AQ_Insert.Parameters[10].Value  := sCel.Text;
     DM_Datos.AQ_Insert.Parameters[11].Value  := sMai.Text;
     DM_Datos.AQ_Insert.Parameters[12].Value  := DM_Datos.AQ_Tipo.FieldByName('Id_TipSocio').Value;
     DM_Datos.AQ_Insert.Parameters[13].Value  := DM_Datos.AQ_Categoria.FieldByName('Id_Categoria').Value;
     DM_Datos.AQ_Insert.Parameters[14].Value  := sIng.date;
    // Hasta aqui, todo funciona bien,me almacena, solo agregue ahora guardar la foto


     // La siguiente linea es donde quiero traspasar la Foto a la Tabla
     DM_Datos.AQ_Insert.Parameters[15].Value  :=  sFot.Picture. // en realidad no se como definir.. 

     DM_Datos.AQ_Insert.ExecSQL;

revise los foros y encontre lo siguiente, pero no lo entendi
Código Delphi [-]
procedure GuardarImagen(Imagen: TImage);
var
  StreamImagen: TStream;
begin
  qry := crear tu componente query 
  qry.Connection := le asignas la conexion
  qry.SQL.Text := 'INSERT INTO TABLA (CampoImagen) VALUES (:CampoImagen)';
  StreamImagen := TMemoryStream.Create;
  try
     Imagen.SaveToStream(StreamImagen);
    StreamImagen.Position := 0;
    qry.ParamByName('CampoImagen').AsSteam := StreamImagen;
    // puede ser en lugar de .AsSteam, .Value, o .LoadFromStream; depende de los componentes
    qry.Execute;
  finally
   StreamImagen.Free;
  end;
end
__________________
BlueSteel
Responder Con Cita
  #2  
Antiguo 22-02-2018
oscorm oscorm is offline
Miembro
NULL
 
Registrado: ago 2004
Ubicación: Hospitalet de Llobregat
Posts: 45
Poder: 0
oscorm Va por buen camino
Prueba:
DM_Datos.AQ_Insert.Parameters[15].LoadFromFile('c:\sample.jpg', ftBlob);
donde 'c:\sample.jpg' es el fichero que tiene la foto
Responder Con Cita
  #3  
Antiguo 22-02-2018
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
NULL
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 18
BlueSteel Va por buen camino
Cita:
Empezado por oscorm Ver Mensaje
Prueba:
DM_Datos.AQ_Insert.Parameters[15].LoadFromFile('c:\sample.jpg', ftBlob);
donde 'c:\sample.jpg' es el fichero que tiene la foto
Interprete el codigo que me indicas con esto

Código Delphi [-]
     DM_Datos.AQ_Insert.Parameters[15].LoadFromFile(BuscaFoto.filename, ftBlob);

donde BuscaFoto es un componente de tipo OpenPictureDialogo. Lo que tomo de ella es la ruta donde esta ubicada la foto

Ahora el error que me indica es

[dcc32 Error] frmCreaActSocios.pas(143): E2003 Undeclared identifier: 'ftBlob'
__________________
BlueSteel
Responder Con Cita
  #4  
Antiguo 22-02-2018
oscorm oscorm is offline
Miembro
NULL
 
Registrado: ago 2004
Ubicación: Hospitalet de Llobregat
Posts: 45
Poder: 0
oscorm Va por buen camino
Este te deberia funcionar

TBlobField(DM_Datos.AQ_Insert.Parameters[15]).LoadFromFile(BuscaFoto.filename);
Responder Con Cita
  #5  
Antiguo 22-02-2018
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
NULL
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 18
BlueSteel Va por buen camino
Unhappy

Cita:
Empezado por oscorm Ver Mensaje
Este te deberia funcionar

TBlobField(DM_Datos.AQ_Insert.Parameters[15]).LoadFromFile(BuscaFoto.filename);

me sigue dando error

Código Delphi [-]
     TBlobField(DM_Datos.AQ_Insert.Parameters[15]).LoadFromFile(BuscaFoto.filename);

Error
[dcc32 Error] frmCreaActSocios.pas(143): E2003 Undeclared identifier: 'TBlobField'
[dcc32 Error] frmCreaActSocios.pas(143): E2066 Missing operator or semicolon
__________________
BlueSteel
Responder Con Cita
  #6  
Antiguo 22-02-2018
oscorm oscorm is offline
Miembro
NULL
 
Registrado: ago 2004
Ubicación: Hospitalet de Llobregat
Posts: 45
Poder: 0
oscorm Va por buen camino
TBlobField está definido en la unidad DB o Data.DB dependiendo de la versión de Delphi con la que estés trabajando.
Pon que use esa unit en la parte del uses de interface y debería tirar
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Guardar Imagen de un TImage num11 Varios 3 19-03-2009 06:52:55
Guardar una Imagen a PDF atrus Gráficos 8 12-08-2008 11:36:03
Guardar imagen franfl Firebird e Interbase 1 29-02-2008 10:02:54
redimensionar y guardar una imagen gallipi Gráficos 1 24-05-2007 20:17:04
Guardar una imagen en un DB lore Conexión con bases de datos 5 20-03-2007 18:07:48


La franja horaria es GMT +2. Ahora son las 01:22:10.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi