Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Gráficos (https://www.clubdelphi.com/foros/forumdisplay.php?f=8)
-   -   insercion jpg mysql problema:= tamaño jpg (https://www.clubdelphi.com/foros/showthread.php?t=76743)

vroa74 24-11-2011 15:35:00

insercion jpg mysql problema:= tamaño jpg
 
buen día.
estoy tratando de insertar imágenes a mysql del tamaño de una hoja carta escaneada a 300 dpi. mas o menos 2 mb.
al hacerlo de esta forma:
Código Delphi [-]
 Mytable1.Insert;
   OpenPictureDialog1.Execute();
   JvDBImage1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
   Jv.Picture.LoadFromFile(OpenPictureDialog1.FileName);
   Mytable1.FieldByName('txt').AsString := OpenPictureDialog1.FileName;
 Mytable1.Post;
Todo esta bien siempre y cuando la imagen sea pequeña cuando pasa de los 56 kb inician problemas porque no guarda toda la imagen mas bien incompleta.
estoy usando un campo de tipo blob (65535) para guardar las imágenes mas si hay alguna otra forma de hacerlo, se los agradecería mucho que me apoyen

roman 24-11-2011 17:02:16

Caray, pues tendría que revisar, pero por lo mismo que comentas: campo de tipo blob (65535), tal parece que estás usando justamente un campo muy pequeño (64kb) que concuerda más o menos con el límite que has notado. MySQL cuenta con blobs de diversos tamaños y seguramente con uno para archivos de muchos megas o gigas.

// Saludos

olbeup 24-11-2011 19:58:09

Yo nose la estructura de una tabla de MySQL, pero hay un campo que la tienes que definir como LONGBLOB, para guardar las imagenes.
eje. Tabla:
Código SQL [-]
CREATE TABLE MyImages
  (
    IDMYIMAGE int(4) NOT NULL AUTO_INCREMENT PRIMARY KEY
    ,DESCRIPCION char(50)
    ,IMAGEN longblob
  )
Lo he sacado de aquí es una página de PHP
Espero que te sirva

Un saludo

vroa74 24-11-2011 20:43:56

Le cambie el tipo de campo al longblob mas ahora me saca un error



Código Delphi [-]
 Mytable1.Insert;
   OpenPictureDialog1.Execute();
   JvDBImage1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
   Mytable1.FieldByName('txt').AsString := OpenPictureDialog1.FileName;
 Mytable1.Post;
el código no ha cambiado.......

roman 24-11-2011 20:46:58

Y, ¿cuál es el error? Además, no me queda claro dónde se supone que estás insertando la imagen en la base de datos, pues en el código que pones sólo se ve un campo de texto.

// Saludos

vroa74 24-11-2011 21:07:02

el erro es este.

project execption class EMysqlException with message 'lost conecction to mysql server during query socket error on write. WSAGetLastError ($2746'.)

http://snpr.cm/h5c4MR.png


cuando cuaba el tipo blob me daba este error ahora acepta imagene mas grandes mas no del tamaño que requiero que es tamaño carta.


La franja horaria es GMT +2. Ahora son las 14:55:05.

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