PDA

Ver la Versión Completa : Invalid BLOB lenght


macu1975
17-05-2004, 16:10:37
Hola.

Estoy teniendo problemas para insertar una imagen en un campo Image(16) de una base SQL2000.
Con paradox anda ok, pero cuando hago una insercion en el sql me da ese error.

La forma de insertar es a traves de un TDBImage trabajando con un query RequestLive = TRUE.

Con imagenes pequeñas (menos de 3k) anda ok, pero con imagenes mayores a 3k sin que sean enormes (4k o 7k) se rompe...

Gracias.

jachguate
17-05-2004, 17:25:10
Hola. En primer lugar, bienvenido(a) a los foros. Te recomiendo la lectura de la guia de estilo de los foros (http://www.clubdelphi.com/foros/guiaestilo.php), que permite una buena convivencia en este lugar.

Además, te recomiendo la lectura del hilo de la calidad de las preguntas que te dará una idea de la información que debieras incluir en tus mensajes.

Con relación a tu pregunta, aparentemente te conectas usando el BDE, y probablemente sea el parámetro Blob Size el que te está complicando. Andá al panel de control para acceder a esta herramienta, y luego a Configuration/Drivers/Native/MSSQL para cambiar el valor del parámetro a uno mas conveniente para vos.

Hasta luego.

;)

macu1975
17-05-2004, 18:13:44
Cambié el Blob Size a 4096 tanto en Drivers/Native/MSSQL y tambien lo hice en Drivers/ODBC/SQL Server pero no hay caso, sigue dando el mismo error.

Muchas gracias

jachguate
17-05-2004, 18:30:34
Esta bien... pero seguis sin aportar mas información sobre tu conexión. Ya leiste el hilo que te recomende??

macu1975
17-05-2004, 19:00:24
Ok, perdon.

El sistema corre con Delphi 6 conectado a traves de ODBC de SQL2k version 2000.81.9042.00

Nose
17-05-2004, 19:08:54
Hola!

Lo que hago es con Ado, para precisar y con un clientdataset. Para grabar uso un TADOStoredProc, el tipo que grabo es ftVarBytes como parametro:


var
MS : TMemoryStream;
begin
...

MS := TMemoryStream.Create;
(CDSDetGuia.FieldByName ('RefExcel1') as TBlobField).SaveToStream(MS);
try
Parameters[i].LoadFromStream(MS, ftBlob);
finally
MS.Free;
end;


Espero que te sirva de algo
Salu2