HiveBrain v1.2.0
Get Started
← Back to all entries
snippetsqlMinor

How can I store a pdf in PostgreSQL

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
postgresqlcanstorehowpdf

Problem

I have to store .pdf files in a table.

I have a table, state, with columns:

id_state,
name,
pdffile (bytea)


I want to store the pdf files in the pdffile column.

How can I do this?

Solution

First, I store PDF's in the db as bytea's. They are easier to manage than large objects and you really dont get very much out of the streaming API (now, streaming video, that should go into lobs). The one real problem with doing this is that it takes extra memory to unescape the data when it comes back to the database and you really can't stream it effectively.

The key thing is that you have to unescape the data when it comes back. libpq provides functions for that as do other programming languages. A few (like Perl) provide db drivers which automatically handle these cases.

You are on to the right structure here. Store it as a bytea and unescape it on retrieval.

Context

StackExchange Database Administrators Q#36493, answer score: 5

Revisions (0)

No revisions yet.