Subject | Changing the CharSet of a VarChar |
---|---|
Author | Jaume Sabater |
Post date | 2004-03-04T23:51:25Z |
Hi everyone!
I have a problem with charsets in varchar fields. This is the situation:
- 700 MB Firebird DB running under FB 1.0.2 on Debian Linux Woody (I backported
the packages myself from Sid)
- 'CLIENTS' table with several VARCHAR fields with no character set nor
collation order.
- Php scripts using adodb 4.20 to access de database.
When I want to be able to browse the data from the table I have to connect with
no charset. Otherwise I get character set transliteration errors.
But when I access some other tables on the database, with varchar fields with
charsets (usually ISO8859_1 collation DE_DE), then I need to connect using
ISO8859_1 character set.
So, I would like to ALTER the table (keeping all the information, triggers,
constraints and related stored procedures) to modify the character set and
collation attributes.
I have not been able to do this. So, I tried to drop all related triggers,
constraints and stored procedures, then export the data and finally recreate
the table. It was a slow process, but it seemed to work... until I tried to
populate the table again (I got a lot of errors with blobs on the vast majority
of records, which made me lose information).
Any idea on how to do this? Any suggestions?
P.S. I have tried free trials of IBWorkBench and IBExpert to help me on this
job, but they solve noone of the mentioned errors, just speed the process up
;-)
--
Jaume Andreu Sabater Malondra
jsabater@...
http://www.linuxsilo.net
"Ubi sapientas ibi libertas"
I have a problem with charsets in varchar fields. This is the situation:
- 700 MB Firebird DB running under FB 1.0.2 on Debian Linux Woody (I backported
the packages myself from Sid)
- 'CLIENTS' table with several VARCHAR fields with no character set nor
collation order.
- Php scripts using adodb 4.20 to access de database.
When I want to be able to browse the data from the table I have to connect with
no charset. Otherwise I get character set transliteration errors.
But when I access some other tables on the database, with varchar fields with
charsets (usually ISO8859_1 collation DE_DE), then I need to connect using
ISO8859_1 character set.
So, I would like to ALTER the table (keeping all the information, triggers,
constraints and related stored procedures) to modify the character set and
collation attributes.
I have not been able to do this. So, I tried to drop all related triggers,
constraints and stored procedures, then export the data and finally recreate
the table. It was a slow process, but it seemed to work... until I tried to
populate the table again (I got a lot of errors with blobs on the vast majority
of records, which made me lose information).
Any idea on how to do this? Any suggestions?
P.S. I have tried free trials of IBWorkBench and IBExpert to help me on this
job, but they solve noone of the mentioned errors, just speed the process up
;-)
--
Jaume Andreu Sabater Malondra
jsabater@...
http://www.linuxsilo.net
"Ubi sapientas ibi libertas"