Re: Backslashes in bytea values

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Lewis Kapell <lkapell@xxxxxxxxxxxxx> wrote:
 
> My company is using Postgres 8.3.8.  We have some tables with
> bytea columns that store file data such as the contents of PDF or
> RTF files.
 
Yeah, we do a lot of that, too.
 
> The escape_string_warning parameter is on, and inserting this kind
> of data causes the backslash warning to be generated, since the
> backslash character appears in the raw data of these types of
> files.
 
We turn that off.
 
> I have updated much of our code to use the E'' syntax in order to
> suppress these messages.
 
If you do that, you'd better be doing something to make sure you
have cured the problem the messages warned of; otherwise you're
going to have corrupted documents.  Are you using prepared
statements and setting the values through those (recommended) or
escaping the backslashes, etc. yourself?
 
> I am trying to figure out what the repercussions would be if I
> were to turn on the standard_conforming_strings parameter.
 
With that on, absolutely all characters are taken as part of the
literal except for apostrophes.  That makes it a bit easier to do
the escaping, and could result in a slight reduction in statement
size.
 
> None of our code actually uses a backslash to escape a double-
> quote, but I don't know how this would affect the bytea values
> which I discussed above.  How are backslashes affected if they are
> actually part of the raw data?
 
If you're just throwing them inside a E'xxx' literal that you build
yourself, it sounds like you've currently got a problem.  If you are
using parameters on prepared statements, it shouldn't matter much.
 
-Kevin

-- 
Sent via pgsql-admin mailing list (pgsql-admin@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux