Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-01-2007
Avatar de BANZAI
BANZAI BANZAI is offline
Registrado
 
Registrado: may 2006
Posts: 3
Poder: 0
BANZAI Va por buen camino
insertar imagenes en SQLServer

Hola tropa
estoy tratando de insertar imagenes en SQLServer y estoy presentando varios problemas:
1- cuando incorporo una caja de dialogo para imagenes, en el tiempo de ejecucion, ésta no me reconoce las extenciones jpg, quedándome solo bmp.
2-he creado una tabla fotos donde al campo foto lo puse de tipo "image" ya que no he visto el tipo "Blob" del que tanto se habla aqui y donde solo lo he visto en MySQL.
me han comentado que para insertar una foto en SQLServer es necesario convertir la imagen en un arreglo, el cual es el que se inserta en la tabla. Que me pueden comentar?
see you
Responder Con Cita
  #2  
Antiguo 20-03-2007
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.289
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Yo he insertado imágenes en SQLServer utilizando ADO y nunca he tenido que convertirlas.
En mi caso utilizo un SQL con parámetros, pero seguro que se puede hacer vía código.

Monto el SQL de la siguiente forma:

Código SQL [-]
  INSERT.... VALUES(1, 'pepe', :imagen);

Luego antes de lanzarla asignas al parámetro la imagen:

Código Delphi [-]
...
  // Buscar el parámetro 
  CommmandParam  :=
     ADOCommand.Parameters.FindParam(NombreParametro);
  // Es una imagen?
  if Assigned(CommmandParam) then begin
    // Asignarlo
    CommmandParam.Assign(Bitmap1);
  end;
  ....
  Lanzar la SQ
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 11-04-2007
argote argote is offline
Miembro
 
Registrado: abr 2007
Posts: 11
Poder: 0
argote Va por buen camino
Hola Banzai

Deja ver si puedo darte otra forma de resolver tu problema,

En primer lugar para ver los archivos JPG tienes que adicionar en la clausula uses la unit JPEG. Estos archivos si te pueden dar un poco de dolor de cabeza a la hora de cargarlos a la base de datos.

Para cargar una imagen debes tener en cuenta que el campo donde los quieres depositar debe ser de tipo image, aca te pongo un pequeño ejemplo de una tabla creada para que te sirva de ejemplo.

create table imagenes (
imagen image)
go

Una vez tengas esto, vas a tu programa en Delphi y puedes hacer lo siguiente:

1. Creas una conexion a la base de datos, yo siempre lo hago a traves de ADO (TADOConnection).
2. Enlaza una tabla ADO a la tabla que creaste para contener las imagenes (TADOTable).
3. Enlaza esta tabla a un componente TDataSource.
4. En el componente TADOTable abre el Field Editor y selecciona todos los campos, o al menos el campo de la tabla donde vas a guardar la imagen.
5. Supuestamente tendrás un botón en tu aplicación que abra el componente TOpenPictureDialog, así que en el evento OnClick, escribe el siguiente código:

procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenPictureDialog1.Execute then
begin
ADOTable1.Insert;
ADOTable1imagen.LoadFromFil(OpenPictureDialog1.FileName);
ADOTable1.Post;
end;
end;


Con estos pasos no deberias tener problemas para guardar la imagen.
Para extraer la imagen a tu aplicación, el componente TDBImage lo hace sin ninguna dificultad y si quieres hacer el proceso inverso, de guardar la imagen de la base de datos al disco duro, puedes utilizar el metodo SaveToFile() del componente TBlobField, te quedaría así:

ADOTable1imagen.SaveToFile('c:\MiImagen.bmp');
Responder Con Cita
Respuesta



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
Insertar imagenes jpg salvanano Gráficos 2 11-05-2006 01:39:58
delphi, sqlserver e imagenes mourockenelqui MS SQL Server 0 01-07-2005 00:08:15
Almacenar imagenes .jpg en SQLServer tannyk Varios 3 25-05-2005 23:57:29
MÁS QUE URGENTE!!! SqlServer e Imagenes rpadin Conexión con bases de datos 8 26-04-2004 21:43:42
insertar imagenes a una BD seb@ JAVA 1 07-04-2004 23:39:54


La franja horaria es GMT +2. Ahora son las 08:38:30.


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