Re: Save and load jpg in a PostgreSQL database - Mailing list pgsql-general

From Dmitriy Igrishin
Subject Re: Save and load jpg in a PostgreSQL database
Date
Msg-id AANLkTimrTje9P2DH+vuBczZMxhrjZNdzoB0=7yb9=yvf@mail.gmail.com
Whole thread Raw
In response to Re: Save and load jpg in a PostgreSQL database  (lfmartinelli <luis.fernando.martinelli@gmail.com>)
List pgsql-general
Hey Fernando,

There is no pg_escape_bytea() in PostgreSQL. It seem like a function of some
PL, like PHP or Tcl... So, the command that you found on a forum is incorrect.
As I understand, you want to upload a file from your (client) filesystem to the
PostgreSQL database (server) and store it in the column of type bytea of some
table, right?
First, you need to read the file from your file system.
Next, if you want to transmit it as is (i.e. in a binary format), you don't need any
escaping. But not all client libraries supports transmission in binary format. If you
need (want) to transmit you binary data in the text format, you must escape it
(e.g. by using pg_escape_bytea() or another function of library you use). Please,
follow the documentation of the library / framework that you are use.

2010/11/5 lfmartinelli <luis.fernando.martinelli@gmail.com>
Hey Dmitriy,

I'm using Visual Studio 2010 system.data.odbc becouse this worked good and i tested psqlodbc lib to .Net, but i don't find any advantage to use this.
In a Brazilian forum, i read a post and it was written:

-" Just use this line: INSERT INTO table (image) VALUES (pg_escape_bytea(image.jpg))".

Changing "image.jpg" to my image file, the PostgreSQL already convert this and save in a database.
Is this true? And how can i load this to imageBox in my system? Which type must be declared my variable?

Thanks to your help.

Em 04/11/2010 15:40, Dmitriy Igrishin [via PostgreSQL] escreveu:
Hey Fernando,

If you need to store binary data in a table you should use bytea data type.
Than, in case of libpq:
If you want to transmit binary data from client to server in text format you
must prepare (escape) it for including into you SQL command (e.g., INSERT).
If you can transmit the data from client to server in binary format you don't
need escape you binary data, but you must tell libpq (or the library you use)
that you transmission will be in a binary format.

What library do you use to work with PostgreSQL ?

2010/11/4 lfmartinelli <[hidden email]>

Hi,

My name is Fernando, i work with C# and PostgreSQL. I need save a jpg in a
PostgreSQL table.
How do i this? I read in a forum to use this to save in database:

INSERT INTO table (image) VALUES (pg_escape_bytea(image.jpg))

Don't i need convert image file to binary before save in a database?
How get i this image to a variable using c#?

Please help me!

Thanks.
--
View this message in context: http://postgresql.1045698.n5.nabble.com/Save-and-load-jpg-in-a-PostgreSQL-database-tp3249969p3249969.html
Sent from the PostgreSQL - general mailing list archive at Nabble.com.

--
Sent via pgsql-general mailing list ([hidden email])

To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general



--
// Dmitriy.





View message @ http://postgresql.1045698.n5.nabble.com/Save-and-load-jpg-in-a-PostgreSQL-database-tp3249969p3250498.html
To unsubscribe from Save and load jpg in a PostgreSQL database, click here.



View this message in context: Re: Save and load jpg in a PostgreSQL database

Sent from the PostgreSQL - general mailing list archive at Nabble.com.



--
// Dmitriy.


pgsql-general by date:

Previous
From: Jacqui Caren-home
Date:
Subject: Re: Re: Modfying source code to read tuples before and after UPDATE...how to?
Next
From: Merlin Moncure
Date:
Subject: Re: Thoughts on a surrogate key lookup function?