PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

So laden Sie die Postgres-Bytea-Spalte als Datei herunter

Eine einfache Möglichkeit ist die Verwendung von COPY Befehl mit encode in das Hex-Format und wenden Sie dann xxd an Shell-Befehl (mit -p kontinuierlichem Hexdump-Stil schalten). Nehmen wir zum Beispiel an, ich habe ein JPG-Bild in der Bytea-Spalte in der Beispieltabelle:

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

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

Wie ich überprüft habe, funktioniert es in der Praxis.