Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus-es / 2011-02

campos bytea con imagenes y DBlistbox

4 messages · 4 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

David Enamorado

Buenos dias lista, amigos estoy desarrollando un proyecto con lazarus pero he tenido un problema con la insercion de imagenes en la base de datos ( postgres). la a accion de grabar registro la realizo de la forma Tabla.fieldbyname('campoTipoString').asstring:= edit.tex; , de esta forma funciona bien para campos que no sean tipo imagen, mi pregunta es �como es la forma correcta para ingresar una imagen a la base de datos utilizando esta tecnica?, la imagen la tengo un un componente Timage. Por otra parte tengo otra duda alguien sabe o conoce algun componente con el que se pueda tomar una imagen de una cam y lograr guardarla en la base de datos?, y mi tercera pregunta es con el componente DBListBox, como se llena de manera automatica para que muestre los datos como DBGrid?. de antemano muchas gracias por su ayuda. y que tengan un muy buen dia.

David Enamorado Guzm�n Ingeniero de Sistemas ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20110204/0d5b4b67/attachment.html>

Reply by email

Paola Bruccoleri
to David Enamorado

El 04/02/2011 11:04 a.m., David Enamorado escribi�:

Show quoted text 8 lines
Buenos dias lista, amigos estoy desarrollando un proyecto con lazarus pero he tenido un problema con la insercion de imagenes en la base de datos ( postgres). la a accion de grabar registro la realizo de la forma Tabla.fieldbyname('campoTipoString').asstring:= edit.tex; , de esta forma funciona bien para campos que no sean tipo imagen, mi pregunta es �como es la forma correcta para ingresar una imagen a la base de datos utilizando esta tecnica?, la imagen la tengo un un componente Timage.

Hola David..

te pego un mail de Jos� Mejuto de hace un tiempito, con una respuesta que puede servirte..

Hello Christian,

Saturday, December 11, 2010, 9:37:31 PM, you wrote:

CO>        SQL.Add('select ' + sImageField );
CO>        SQL.Add('from '+ sTable);
CO>        SQL.Add('where '+ sCondicion);
CO>        Open;
CO>        Edit;
CO>  TBlobField(FieldByName(sImageField)).LoadFromStream(TheImage);
CO>        Post; ///Probe con ApplyUpdates y fue lo mismo/
CO>        FreeAndNil(TheImage);
CO>  *end;
CO>  end; *

Sin ver "sCondition" es un poco dif�cil. Si tabla tiene un primary key, seleccionala tambi�n en el select, por que aparenta un bug en el query al generar el update sql sin un campo "primary key".

De todos modos, lo l�gico ser�a hacer eso son un EXECSQL no con un Open :-?

SQL.Text:='Update :pTable Set :pfield=:pfieldvalue where '+sCondition;
ParamByName('pTable').asString:=sTable;
ParamByName('pField').asString:=sImageField;
ParamByName('pField').LoadFromStream(TheImage);
ExecSQL;

Reply by email

Anxo Vázquez
to Paola Bruccoleri

Hola,

Yo creo que es mejor guardar en la bbdd el nombre de la imagen y la imagen en una carpeta, Si gaurdas la imagen en la bbdd esta crecer� de forma casi exponencial.
LoadFromFile y SaveFromFile te permitir�n manejar la imagen como quiereas.

Un saludo.[?]

El 4 de febrero de 2011 14:42, Paola Bruccoleri
<pbruccoleri en adinet.com.uy>escribi�:

Show quoted text 52 lines
El 04/02/2011 11:04 a.m., David Enamorado escribi�: Buenos dias lista, amigos estoy desarrollando un proyecto con lazarus > pero he tenido un problema con la insercion de imagenes en la base de datos > ( postgres). la a accion de grabar registro la realizo de la forma > Tabla.fieldbyname('campoTipoString').asstring:= edit.tex; , de esta forma > funciona bien para campos que no sean tipo imagen, mi pregunta es �como es > la forma correcta para ingresar una imagen a la base de datos utilizando > esta tecnica?, la imagen la tengo un un componente Timage. > Hola David.. te pego un mail de Jos� Mejuto de hace un tiempito, con una respuesta que puede servirte.. Hello Christian, Saturday, December 11, 2010, 9:37:31 PM, you wrote: CO> SQL.Add('select ' + sImageField ); CO> SQL.Add('from '+ sTable); CO> SQL.Add('where '+ sCondicion); CO> Open; CO> Edit; CO> TBlobField(FieldByName(sImageField)).LoadFromStream(TheImage); CO> Post; ///Probe con ApplyUpdates y fue lo mismo/ CO> FreeAndNil(TheImage); CO> *end; CO> end; * Sin ver "sCondition" es un poco dif�cil. Si tabla tiene un primary key, seleccionala tambi�n en el select, por que aparenta un bug en el query al generar el update sql sin un campo "primary key". De todos modos, lo l�gico ser�a hacer eso son un EXECSQL no con un Open :-? SQL.Text:='Update :pTable Set :pfield=:pfieldvalue where '+sCondition; ParamByName('pTable').asString:=sTable; ParamByName('pField').asString:=sImageField; ParamByName('pField').LoadFromStream(TheImage); ExecSQL; _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20110209/89f67385/attachment.html> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: no disponible
Type: image/gif
Size: 96 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20110209/89f67385/attachment.gif>

Reply by email

Maxi
to Anxo Vázquez

2011/2/9 Anxo V�zquez <xanxov en esdebian.org>

Show quoted text 72 lines
Hola, Yo creo que es mejor guardar en la bbdd el nombre de la imagen y la imagen en una carpeta, Si gaurdas la imagen en la bbdd esta crecer� de forma casi exponencial. LoadFromFile y SaveFromFile te permitir�n manejar la imagen como quiereas. Un saludo.[?] El 4 de febrero de 2011 14:42, Paola Bruccoleri <pbruccoleri en adinet.com.uy > escribi�: El 04/02/2011 11:04 a.m., David Enamorado escribi�: > > Buenos dias lista, amigos estoy desarrollando un proyecto con lazarus >> pero he tenido un problema con la insercion de imagenes en la base de datos >> ( postgres). la a accion de grabar registro la realizo de la forma >> Tabla.fieldbyname('campoTipoString').asstring:= edit.tex; , de esta forma >> funciona bien para campos que no sean tipo imagen, mi pregunta es �como es >> la forma correcta para ingresar una imagen a la base de datos utilizando >> esta tecnica?, la imagen la tengo un un componente Timage. >> > Hola David.. > > te pego un mail de Jos� Mejuto de hace un tiempito, con una respuesta que > puede servirte.. > > Hello Christian, > > Saturday, December 11, 2010, 9:37:31 PM, you wrote: > > CO> SQL.Add('select ' + sImageField ); > CO> SQL.Add('from '+ sTable); > CO> SQL.Add('where '+ sCondicion); > CO> Open; > CO> Edit; > CO> TBlobField(FieldByName(sImageField)).LoadFromStream(TheImage); > CO> Post; ///Probe con ApplyUpdates y fue lo mismo/ > CO> FreeAndNil(TheImage); > CO> *end; > CO> end; * > > Sin ver "sCondition" es un poco dif�cil. Si tabla tiene un primary > key, seleccionala tambi�n en el select, por que aparenta un bug en > el query al generar el update sql sin un campo "primary key". > > De todos modos, lo l�gico ser�a hacer eso son un EXECSQL no con un > Open :-? > > SQL.Text:='Update :pTable Set :pfield=:pfieldvalue where '+sCondition; > ParamByName('pTable').asString:=sTable; > ParamByName('pField').asString:=sImageField; > ParamByName('pField').LoadFromStream(TheImage); > > ExecSQL; > > > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

yo prefiero guardar la imagen el la base, teniendo en cuenta primero el formato, que sea jpg o png lo que te asegura un tama�o no mayor de 600k para una imagen normal no muy grande.

No a la obsolecencia programada: http://dimensionargentina.blogspot.com/2011/01/todo-esta-disenado-para-romperse.html Twitter: @nenunocomar Identi.ca: @nenuno Maximiliano Duarte Linux User #495070 Ubuntu User #28504 http://miexperiencialinux.blogspot.com/ El que pregunta aprende, y el que contesta aprende a responder. ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20110209/ab7c6e51/attachment.html> ------------ pr�xima parte ------------ A non-text attachment was scrubbed... Name: no disponible Type: image/gif Size: 96 bytes Desc: no disponible URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20110209/ab7c6e51/attachment.gif>

Reply by email