Bytea to Text problems

Started by John McCawleyover 19 years ago3 messagesgeneral
Jump to latest
#1John McCawley
nospam@hardgeus.com

I've searched high and low, and all I've found is people being chided
for trying to convert from Bytea to text :)

When I first designed my database, I simply didn't understand the
purpose of bytea, I didn't actually realize that there *was* a text data
type. (Actually, I was porting from a MS SQL database, and if I
remember correctly, PgAdmin actually made the decision for me) I now
need to convert my field from bytea to text, but there doesn't seem to
be a clean way to do it. So far I have done the following:

alter table tbl_inventory ADD longdescription_new text;

update tbl_inventory SET longdescription_new = encode(longdescription,
'escape');

update tbl_inventory SET longdescription_new =
replace(longdescription_new, '\256', '\n') WHERE longdescription_new
LIKE '%\256%';

(ad infinitum)

The problem is that encode, obviously, escapes a metric ton of stuff,
and I have no idea *what* is being encoded, or even what it is being
encoded into, other than exhaustively digging through my data and
comparing the escape codes to the original text. Is there a chart
somewhere that will show me? Is there a script that will do this?

John

#2Martijn van Oosterhout
kleptog@svana.org
In reply to: John McCawley (#1)
Re: Bytea to Text problems

On Tue, Sep 12, 2006 at 10:56:09AM -0500, John McCawley wrote:

I've searched high and low, and all I've found is people being chided
for trying to convert from Bytea to text :)

When I first designed my database, I simply didn't understand the
purpose of bytea, I didn't actually realize that there *was* a text data
type. (Actually, I was porting from a MS SQL database, and if I
remember correctly, PgAdmin actually made the decision for me) I now
need to convert my field from bytea to text, but there doesn't seem to
be a clean way to do it. So far I have done the following:

Doesn't straight assignment do it?

Don't confuse the escaped output from bytea with the actual data.

Hope this helps,
--
Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/

Show quoted text

From each according to his ability. To each according to his ability to litigate.

#3John McCawley
nospam@hardgeus.com
In reply to: Martijn van Oosterhout (#2)
Re: Bytea to Text problems

Yeah, apparently it's OK when spewed out to the browser...Didn't think
of that :P

Martijn van Oosterhout wrote:

Show quoted text

On Tue, Sep 12, 2006 at 10:56:09AM -0500, John McCawley wrote:

I've searched high and low, and all I've found is people being chided
for trying to convert from Bytea to text :)

When I first designed my database, I simply didn't understand the
purpose of bytea, I didn't actually realize that there *was* a text data
type. (Actually, I was porting from a MS SQL database, and if I
remember correctly, PgAdmin actually made the decision for me) I now
need to convert my field from bytea to text, but there doesn't seem to
be a clean way to do it. So far I have done the following:

Doesn't straight assignment do it?

Don't confuse the escaped output from bytea with the actual data.

Hope this helps,