Re: Saving a jpg into Postgresql table - Mailing list pgsql-general

From Jeff Davis
Subject Re: Saving a jpg into Postgresql table
Date
Msg-id 1156526254.1347.37.camel@dogma.v10.wvs
Whole thread Raw
In response to Re: Saving a jpg into Postgresql table  (Kaloyan Iliev <news1@faith.digsys.bg>)
Responses Re: Saving a jpg into Postgresql table  (Karsten Hilbert <Karsten.Hilbert@gmx.net>)
List pgsql-general
On Fri, 2006-08-25 at 10:10 +0300, Kaloyan Iliev wrote:
> >
> > I have a projects using ASP.NET (VB.net) where i upload a jpeg file
> > using a web form and then save the jpeg file into a table. I've
> > decided to use "Oid" instead of "Bytea" as i heard that "Oid" is more
> > memory efficient. So can anyone point me to a website or link where i
> > can see the VB.net or C# code that does the SQL insert of the jpeg
> > file into the "Oid" data type column and also how to do a SQL select
> > to retrieve and display the image on a web form? Thanks
>
> Hi,
> I have problem like yours and I solve it like that:
> I transform the jpeg to Base64 text and then store it into normal text
> field.
> It takes aproximately 25-30% more disk space but is much easier for me
> to operate with it.
> When I read the object from the database I decode it and I have the file
> in the original format.
>

Why not go a step further and do this:

(1) encode the image as base64
(2) insert into mytable(image) values(decode('<base64 encoding of
image>','base64'));

Then, to get it back:

(1) select encode(image,'base64') from mytable;
(2) decode the base64 into your image

That way, you can store it in a bytea field and not waste the space.

Regards,
    Jeff Davis




pgsql-general by date:

Previous
From: Bob Pawley
Date:
Subject: Inserting Data
Next
From: "Randy How"
Date:
Subject: Re: FW: Serverlog 100GB