[firebase-br] Ajuda em Insert

Eduardo Bahiense eduardo em icontroller.com.br
Qui Jun 8 08:33:51 -03 2006


Olá Paulo

Não sei se ajuda, mas o IBPump migra de Access para Firebird em alguns 
clicks. Muitas vezes, quando tenho que migrar dados, prefiro levar tudo 
de uma vez para o FB com um aplicativo deste tipo e depois trabalho os 
ajustes já em FB.

[]s Eduardo


Paulo Henrique Mendes Martin escreveu:
> Hoje estava eu migrando meu mísero banco de dados ACCESS para FIREBIRD, Ok,
> achei que não ia ser muito complicado, quando me deparei com UPDATE, tentei
> fazer via códgio (assumam que estou usando VB6) mas nada deu certo, pelo
> contrário foi pior ainda.
> 
> As dúvidas são o seguinte.
> 
> Analogamente o que é um Memo no firebird??? Eu fiz um varchar de size 200.
> 
> porque isso não funciona.
> 
> UPDATE [TABELA] SET [TABELA].[CAMPO]="[VALOR]"
> 
> assumindo que eu esteja em um for e valor é uma string Null??? Ele da erro
> de compatibilidade no SQL comand por causa de ser nulo, então tive que
> tratar isso e fazer a variável valer "" para entrar, creio que não faça
> sentido isso.
> 
> E porque o mesmo UPDATE não funciona quando a data é nula???Qual é o
> equivalente nulo a data?? Pois também dá erro de compatibilidade.
> A princípio eu estou tratando tudo isso no meu for, tive que fazer isso para
> tratar cada campo da minha tabela.
> 
> Eu consegui fazer a migração sob muita gambiarra, mas queria saber um jeito
> de eu não ter que ficar tratando as variáveis quando elas são nulas, só para
> esclarecer melhor esse é mais ou menos o meu código
> 
> 
> F = Array("Campo1", "Campo2") ' Esse são os nomes dos campos da tabela do
> Firebird
> X = Array(Rec(Campo1), Rec(Campo2)) ' Aqui são os campos em Recordset da
> tabela do Access
> 
> Rec.MoveFirst
> 
> Do Until Rec.EOF
>    FOR Cont = 0 to 0
>        sqlF = "INSERT INTO socios (" & F(Cont) & ") Values" "("&  ' " &
> X(Cont) & " ' &")"
>        cn.Execute (sqlF) 'cn é o banco Firebird
>        FOR Cont2= 1 to 1
>             sqlF="UPDATE socios SET socios." & F(Cont) & "=" ' & X(Cont) & "
> '
>             cn.Execute (sqlF)
>         Next
>      Next
> Loop
> 
> E basicamente isso, eu fiz de cabeça agora, não sei se tem alguma coisa
> errada, não sei se me expressei bem, mas caso haja dúvidas com minha dúvida
> é só discorrer sobre esse assunto.
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> 





Mais detalhes sobre a lista de discussão lista