From: ivan <ivan-pgsql-interfaces@420.am>
To: Alex Pilosov <alex@pilosoft.com>
Cc: pgsql-interfaces@postgresql.org
Cc: E.Mergl@bawue.de
Subject: Re: DBD::Pg, bytea type
Date: Thu, 8 Mar 2001 14:04:05 -0800
Message-ID: <20010308140404.A12354@cleanwhisker.420.am> (raw)
In-Reply-To: <Pine.BSO.4.10.10103081425560.5069-100000@spider.pilosoft.com>
References: <Pine.BSO.4.10.10103081425560.5069-100000@spider.pilosoft.com>
On Thu, Mar 08, 2001 at 02:48:16PM -0500, Alex Pilosov wrote:
> Hiyas,
>
> Currently, there's a problem using bytea type transparently with DBD::Pg
> driver. Postgres requires you to quote things in a special way to handle
> bytea data, for example, to insert a null character, you have to use
> '\000'. Select, on other hand, will require you to uncode such data before
> you can actually use it in perl.
>
> I'm making patches for DBD::Pg which will properly quote bytea data
> before insertion and unquote it on select. Let me know if its not a good
> idea.
Surely other 8-bit clean interfaces besides DBD::Pg run into this problem
also? Any insights?
I'd think that it should be transparant for both the quote() method and
placeholders. Placeholders also *segfault* the client (not something
we're used to in Perl-land) if you try to use more than 64k of data (not
sure if that's per-placeholder, statement, row or something else).
> Another thing: Currently, Pg quote() method only will properly escape
> backslash if the datatype is not specified. If the datatype is specified,
> it'll give wrong result:
> $dbh->quote('foo\\bar', SQL_CHAR) will result in 'foo\bar', but it should
> result in 'foo\\bar'. Anyone minds if I fix this one as well?
I've heard a variety of different problem reports about quote(). Here's a
patch one of my cow orkers sent me:
http://www.postgresql.org/mhonarc/pgsql-interfaces/2001-02/msg00199.html
--
meow
_ivan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-interfaces@postgresql.org
Cc: ivan-pgsql-interfaces@420.am, alex@pilosoft.com, E.Mergl@bawue.de
Subject: Re: DBD::Pg, bytea type
In-Reply-To: <20010308140404.A12354@cleanwhisker.420.am>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox