Re: bytea question
От | Stephan Szabo |
---|---|
Тема | Re: bytea question |
Дата | |
Msg-id | 20090928093020.U40526@megazone.bigpanda.com обсуждение исходный текст |
Ответ на | bytea question (Maximilian Tyrtania <maximilian.tyrtania@byte-employer.de>) |
Список | 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.
В списке pgsql-general по дате отправления: