Save Image in database

Discussion of open issues, suggestions and bugs regarding SDAC (SQL Server Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
sweiner
Posts: 5
Joined: Fri 14 Oct 2005 11:07
Location: Germany

Save Image in database

Post by sweiner » Fri 31 Aug 2007 08:02

What's wrong? :?:
I try to save a image in a database with the following code, but it doesn't work. Could everybody help? Thanks

DBImage.Picture.Bitmap.SaveToStream(TheStream);
sql.clear;
sql.add('set dateformat dmy');
Sql.add('update t_pstamm set image=(ThePicture) where autonum= '''+TBStammAutonum+''' and vdatum='''+formatdatetime('dd.mm.yyyy',vdatestamm.date)+''' ');
Params.Clear;
Params.CreateParam(ftBlob,'ThePicture', ptInput);
ParamByName('ThePicture').LoadfromStream(TheStream,ftBlob);
Execute;

Antaeus
Posts: 2098
Joined: Tue 14 Feb 2006 10:14

Post by Antaeus » Fri 31 Aug 2007 12:48

You should not create parameters manually. Try to change your code to something like this:

Code: Select all

DBImage.Picture.Bitmap.SaveToStream(TheStream); 
sql.clear; 
sql.add('set dateformat dmy'); 
Sql.add('update t_pstamm set image=:ThePicture where autonum= '''+TBStammAutonum+''' and vdatum='''+formatdatetime('dd.mm.yyyy',vdatestamm.date)+''' '); 
ParamByName('ThePicture').LoadfromStream(TheStream,ftBlob); 
Execute;

Post Reply