[ale] perl/postgresql question
Geoffrey Myers
lists at serioustechnology.com
Thu Mar 31 12:04:05 EDT 2011
So, we are trying to convert a number of postgresql databases that were
created with SQL_ASCII encoding to UTF8 encoding. As such, I need to
strip certain characters out of the data before dumping and reloading
the new databases. I'm using the following:
data =~ s/(.)/((ord($1) >= 0) && (ord($1) <= 8))
|| (ord($1) == 11)
|| ((ord($1) >= 13) && (ord($1) <= 31))
|| ((ord($1) >= 127)) ?"": $1/egs;
Yet I'm getting the following error, which indicates a character that
should be handled by the above code is still in the data:
pg_restore: [archiver (db)] COPY failed: ERROR: invalid byte sequence
for encoding "UTF8": 0xbd
Certainly, the above code should replace the 0xbd with nothing?
Any perl/postgres gurus out there?
--
Until later, Geoffrey
"I predict future happiness for America if they can prevent
the government from wasting the labors of the people under
the pretense of taking care of them."
- Thomas Jefferson
More information about the Ale
mailing list