From: | Csanyi Pal <csanyipal(at)gmail(dot)com> |
---|---|
To: | Ho John Lee <hjl(at)mindspring(dot)com> |
Cc: | PostgreSQL General <pgsql-general(at)lists(dot)postgresql(dot)org> |
Subject: | Re: How to display stored image as bytea or as large objects? |
Date: | 2021-07-15 09:38:43 |
Message-ID: | 749d5156-d0d2-6dce-c7af-2220919395a8@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi Ho John Lee,
I found one can in DBeaver upload an image into bytea data type column.
So my issue is gone; by using DBeaver I can upload images and also
display those images stored in a postgresql database.
Thanks!
2021. 07. 15. 6:47 keltezéssel, Ho John Lee írta:
> I use python with psycopg2, for a table 'myimage_table' with columns
> 'label' and 'b' of type varchar and bytea something like this:
>
> <set up database connection, and get a cursor>
> query = 'insert into myimage_table (label, b) values (%s, %s)'
> imagelabel = 'some_label'
> imagebuf = <byte data of your image>
> b = psycopg2.Binary(imagebuf)
> cur.execute(query, (imagelabel, b))
>
> The SQL query doesn't have raw binary data in it, the text representing
> the raw data looks something like this: \\xffd8ffe000104a...
> Psycopg2 constructs the SQL query, including encoding the raw bytes into
> text to send to Postgres (which converts back to raw bytes to store.)
> Once you actually have raw image data in your table, you can use dbeaver
> or other tools and get a rendered image corresponding to the value stored.
>
> --hjl
>
> On Wed, Jul 14, 2021 at 9:12 PM Csanyi Pal <csanyipal(at)gmail(dot)com
> <mailto:csanyipal(at)gmail(dot)com>> wrote:
>
> 2021. 07. 14. 22:17 keltezéssel, Ho John Lee írta:
> > If you have the binary data for the image in the bytea field,
> DBeaver
> > will display the image when you select that field in table view
> of the data.
> > The field will display something like "ÿØÿà JFIF [nnnnn]" in
> the row
> > (first part of data as unicode, and data length in bytes), you
> won't see
> > the image unless you put focus on it.
>
> I will try this, but do not know which SQL code will store an image
> in a
> bytea data type column?
>
> Could you give such SQL code please?
>
> At the moment I have stored image in an oid data type column.
>
>
> > .--hjl
>
> > On Wed, Jul 14, 2021 at 12:57 PM Csanyi Pal <csanyipal(at)gmail(dot)com
> <mailto:csanyipal(at)gmail(dot)com>
> > <mailto:csanyipal(at)gmail(dot)com <mailto:csanyipal(at)gmail(dot)com>>> wrote:
> >
> > Hi,
> >
> > I am a novice in postgresql language.
> >
> > By reading the documentation about storing binary data in
> postgresql
> > database, I realize that that one can store images as binary
> data by
> > using bytea or BLOB data types.
> >
> > I am running postgresql on Ubuntu 20.04.2 LTS and using
> pgAdmin4 in
> > Desktop mode.
> >
> > I have stored an image in one of my table with this command:
> >
> > <code>
> > insert into leckek
> > (az, a_tanitas_nyelve, mely_negyedevben, mely_osztalyban,
> > mely_tagozaton, mely_orakon, a_tanitas_temaja,
> > a_lecke_neve, a_lecke_gyakorlati_reszenek_neve,
> > a_lecke_gyakorlati_reszenek_dokumentuma,
> > a_lecke_elmeleti_reszenek_neve,
> > a_lecke_elmeleti_reszenek_dokumentuma,
> > a_lecke_elmeleti_reszenek_tesztje)
> > values (default, 'Hu', 1, 5, 'b', '1-2', 'Élet és mukakörnyezet',
> > 'A technika és technológia fogalma, szerepe és
> > jelentősége',
> > 'másolás',
> > default,
> > 'A lényeg',
> >
> >
> lo_import('/home/pali/Irataim/Iskola/IskolaEv_2020_2021/MuszakiOraim/Digitalis_Tananyagok_Orakra/Hu/5/5_osztaly_Tananyag_01_02_orara.png'),
> > default)
> > </code>
> >
> > so I have now in this table the first row:
> > 1 "Hu" 1 5 "b" "1-2 " "Élet és
> > mukakörnyezet" "A technika és
> > technológia fogalma, szerepe és jelentősége" "másolás"
> > "A lényeg" "16800"
> >
> > Here the 16800 is the OID of the binary data, the image.
> >
> > I would like to know how can one display this stored image
> somehow by
> > using some IDE for manage databases?
> >
> > In applications like pgAdmin4, Libreoffice Base, pgModeler,
> DBeaver one
> > can't display this stored image.
> >
> > In SQLiteBrowser (this is an IDE for SQLite databases) one
> can display
> > with easy the stored image.
> >
> > So is there an easy way to display a stored image in postgresql?
> >
> > --
> > Best,
> > from Paul
From | Date | Subject | |
---|---|---|---|
Next Message | Lucas | 2021-07-15 10:34:38 | Re: PostgreSQL 9.2 high replication lag |
Previous Message | Laurenz Albe | 2021-07-15 09:08:04 | Re: Problem upgrading from Postgresql 9.5 |