PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come scaricare la colonna bytea di Postgres come file

Una semplice opzione è usare COPY comando con encode in formato esadecimale e quindi applica xxd comando shell (con -p stile hexdump continuo interruttore). Ad esempio, diciamo che ho un'immagine jpg nella colonna bytea nella tabella degli esempi:

\copy (SELECT encode(file, 'hex') FROM samples LIMIT 1) TO
    '/home/grzegorz/Desktop/image.hex'

$ xxd -p -r image.hex > image.jpg

Come ho verificato, funziona in pratica.