[firebase-br] Migrando do FB2.0 para o FB2.1, problema com collate

Arlei Ferreira Farnetani Junior junior em farsoft.com.br
Dom Mar 23 22:07:12 -03 2008


Eduardo...valew pela dia...mas estou com um problema...

Alguns campos PK meus são do tipo VARCHAR... ISO8859_1 estão
com o collate default ISO8859_1

Tentei rodar a instrução abaixo:

update RDB$RELATION_FIELDS set
RDB$COLLATION_ID = 16
where RDB$COLLATION_ID = 0

o 0 é o varchar ISO8859_1 com o padrão e
o 16 é o varchar ISO8859_1 com o PT_BR

o porém que dá problema nas PKs...ai to
tendo que arrumar tudo na unha...só que
tenho um problema, tenho mais 30 bancos destes
para migrar...sacou...

Existe algum comando que eu rode apenas uma
vez e ele já extraia os dados e transporte para
um outro banco? Eu pergunto isto pq este
meu banco tem 208 tabelas...E se tiver q
fazer tabela a tabela...putz...ja da pra desanimar...

To fazendo assim oh:
select * from RDB$RELATION_FIELDS
where RDB$collation_id=0

ai vou de um e um e to alterando para o codigo 16.

Qualquer luz será bem vinda...valew!



----- Original Message ----- 
From: "Eduardo Bahiense" <eduardo em icontroller.com.br>
To: <lista em firebase.com.br>
Sent: Sunday, March 23, 2008 4:59 PM
Subject: Re: [firebase-br] Migrando do FB2.0 para o FB2.1,problema com 
collate


Olá Arlei

Na verdade não é o IBExpertinho, é o próprio FB.
Infelizmente, há um passo pouco documentado na criação do Banco que é
"setar" o Collate default para o banco.

Faz assim, cria um banco novo com Charset ISO8859_1. Antes de fazer
qualquer coisa no banco, rode a instrução abaixo:

UPDATE RDB$CHARACTER_SETS SET RDB$DEFAULT_COLLATE_NAME = 'PT_BR' WHERE
RDB$CHARACTER_SET_NAME = 'ISO8859_1'

Pronto! Daqui para frente, qualquer campo que exija collate será criado
com esse.

Observações:

1. Após essa query, reinicie o FB
2. O ideal é que vc prepare um banco novo e transporte as informações
para ele extraindo o metadata do banco antigo.
3. Após o processo de migração, Backup->Restore
4. As conseqüências de não seguir estes passos são imprevisíveis.

Abs,

Eduardo

Arlei Ferreira Farnetani Junior escreveu:
> Pessoal, estou migrando do FB2 para o 2.1 e estou tendo
> um problema em relação ao Collate ISO8859_1, me parece
> que ele não existe no FB 2.1, me resultando a seguinte msg
> de erro:
>
>
> Me parece que qdo nao colocamos o collate o proprio
> IBEXPERT coloca ele resultando que todos os
> campos varchar que fiz estao com este collate aparecendo...
>
> Gostaria de saber se existe um comando sql para alterar
> todos os varchars com collate ISO8859_1 para o pt_br.
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: 
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use: 
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa 





Mais detalhes sobre a lista de discussão lista