I would like to store a compressed string (XML) in my PostgreSQL table. So far, I have been unsuccessful in uncompressing the data that I insert.

For example:

echo gzuncompress(gzcompress('this is a test'));

works fine.

But when i store the gzcompressed data in the table, the data that is returned from a SELECT call does not match and the call to gzuncompress throws a "data error" warning. I have tried storing in both text and bytea column types.

The problem appears to be in the escaping.  For example, with bytea:

$data = gzcompress('this is a test');
echo $data;
$data2 = pg_unescape_bytea(pg_escape_bytea($data));
echo $data2;

$data does not equal $data2.

And with a 'text' column type, i use pg_escape_string() and the returned column value does not match.

Am i doing something wrong?  Is there an easier way?



PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to