From: | Stephan Szabo <sszabo(at)megazone(dot)bigpanda(dot)com> |
---|---|
To: | Maximilian Tyrtania <maximilian(dot)tyrtania(at)byte-employer(dot)de> |
Cc: | 'PostgreSQL pg-general List' <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: bytea question |
Date: | 2009-09-28 16:33:12 |
Message-ID: | 20090928093020.U40526@megazone.bigpanda.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Mon, 28 Sep 2009, Maximilian Tyrtania wrote:
> testdb=# create table byteatest(blob bytea);
> CREATE TABLE
> testdb=# insert into byteatest (blob) values (E'\\007');
> INSERT 0 1
> testdb=# insert into byteatest (blob) values (E'\\008');
> ERROR: invalid input syntax for type bytea
> LINE 1: insert into byteatest (blob) values (E'\\008');
>
> Or also:
>
> testdb=# SELECT E'\\001'::bytea;
> bytea
> -------
> \001
> (1 row)
>
> testdb=# SELECT E'\\008'::bytea;
> ERROR: invalid input syntax for type bytea
> LINE 1: SELECT E'\\008'::bytea;
>
> As far as I can see i followed the escaping rules given in
>
> http://www.postgresql.org/docs/current/static/datatype-binary.html
>From that:
"When entering bytea values, octets of certain values must be escaped (but
all octet values can be escaped) when used as part of a string literal in
an SQL statement. In general, to escape an octet, convert it into its
three-digit octal value and precede it by two backslashes."
008 isn't a valid octal value, you'd want 010 to represent 8.
From | Date | Subject | |
---|---|---|---|
Next Message | Merlin Moncure | 2009-09-28 16:42:13 | Re: computed values in plpgsql |
Previous Message | Adrian Klaver | 2009-09-28 16:31:30 | Re: sync structures |