[firebase-br] Migrar IB/FB
RedDevil
reddevil em reddevil.eti.br
Seg Ago 1 01:03:09 -03 2005
ola pessoal,
nos testes que eu fiz agora a pouco sobre esse lance ae, aconteceu a historia
mais estranha que eu ja tive a oportunidade de presenciar...
tipow assim se a gente executar no IBExpert o update na tabela de sistema que o
Eduardo colocou na roda (ow Jose Luiz, aquela msg sobre o Plan nao eh de erro...
isso acontece tambem quando a gente executa uma SP ou alguma coisa do genero),
realmente o IBExpert continua exibindo a metadata sem o collate... nao adianta
reiniciar o servidor, nem fazer backup/restore que o collate nao muda no
IBExpert, mas basta abrir o mesmo banco com o IBOConsole que nele o collate
aparece alterado...
mesmo se a gente esquecer o IBExpert, e fazer toda a historia no IBOConsole,
neste ultimo o collate aparece, mas se a gente entrar no IBExpert em seguida,
nele a alteraçao nao consta...
a impressao que fica eh a de que o IBExpert nao reconhece alteraçoes feitas via
alteraçao de tabela de sistema...
"subproduto de rock... sera um tipo de nhoque? alguem me de um toque o que que
quer dizer..." - by Intelligence
;o)
[]s
força sempre.
ate +++
--
Luiz "RedDevil" Stefanski
http://www.RedDevil.eti.br - Delphi 4 Powered by IBObjects
exemplos e dicas sobre o IBObjects:
http://www.firebase.com.br/cgi-bin/firebase.cgi/dnld?ID=165
compilaçao/instalaçao do IBObjects sabor BPG:
http://www.firebase.com.br/cgi-bin/firebase.cgi/artigo?ID=630
----- Original Message -----
From: "Jose Luiz de Medeiros" <medeiros em pontenet.com.br>
To: "'FireBase'" <lista em firebase.com.br>
Sent: Sunday, July 31, 2005 11:28 PM
Subject: RES: [firebase-br] Migrar IB/FB
Colega..
Obrigado pela força, e duro iniciar em uma tecnologia nova, pois até a pouco
sofria com Paradox, BDE..
Rodei essa linha de código que vc me sugeriu mas parece ter me dado um erro:
Código que vc me enviou:
UPDATE RDB$FIELDS SET RDB$COLLATION_ID = 2 WHERE RDB$FIELD_TYPE IN
(14,37) AND RDB$CHARACTER_SET_ID=53 AND RDB$SYSTEM_FLAG=0
Deu o seguinte erro no IBExpert:
Plan
PLAN (RDB$FIELDS NATURAL)
Adapted Plan
PLAN (RDB$FIELDS NATURAL)
E não alterou nada nos campos os campos nome por exemplo de uma tabela
continua com o CHARACTER E COLLATE = NOME .
O que será que fiz de errado?
Grato:
Jose Luiz
-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de eduardo
Enviada em: domingo, 31 de julho de 2005 19:07
Para: lista em firebase.com.br
Assunto: Re: [firebase-br] Migrar IB/FB
Oi Jose Luiz
Quanto ao Character set, será usado automaticamente o que você definiu
na criação do banco.
Quanto ao COLLATE, o ideal é que você trocasse já nos scripts de criação
onde, com Ctrl+C/V, seria fácil trocar todos.
Você pode, contudo, alterar diretamente as tabelas do Sistema:
Na tabela RDB$FIELDS, o campo RDB$FIELD_TYPE terá o valor 37 para
VARCHAR e 14 para CHAR. O código do COLLATE PXW_INTL850 é 2 e o do
CharacterSet WIN1252 é 53.
A query abaixo faz o que você quer
UPDATE RDB$FIELDS SET RDB$COLLATION_ID = 2 WHERE RDB$FIELD_TYPE IN
(14,37) AND RDB$CHARACTER_SET_ID=53 AND RDB$SYSTEM_FLAG=0
Como é um tabela do Sistema, após executá-la, reinicie o Servidor e faça
um backup/restore para ter certeza que deu tudo certo. Também é
aconselhável ter um Backup prévio do banco antes de fazer isso.
[]s Eduardo
> Colegas..
>
>
>
> Tenho um sistema em delphi que usa o IB 6.0 com vários registros,
conectados
> com os componentes nativos da paleta Interbase. Como adotei o FireBird 1.5
> para os meus sistemas, preciso criar um outro banco de dados com a mesma
> estrutura do firebird. Já fiz usando o IBDataPump , com os scripts do BD
> original compilei no IBExpert e blz, mandei migrar os dados através do
> IBDataPump. Mas como tenho varias tabelas no meu Banco de dados preciso
> padronizar o Charset como WIN1252 E OS COLLATES COMO PXW_INTL850 de todos
os
> DOMAINS e campos das tabelas do tipo CHAR E VARCHAR, que é uma
determinação
> que o cantu colocou varias vezes em seu livro. Teria jeito de se fazer
isso
> já com as tabelas e domínios já prontos , sem precisar de ir em tabela por
> tabela individualmentte?
>
>
>
> E qual componente devo adotar para substituir os da paleta Ineterbase?
>
>
>
>
>
> Grato:
>
>
>
> Jose Luiz
Mais detalhes sobre a lista de discussão lista