[firebase-br] Ajuda em Insert

Paulo Henrique Mendes Martin paulo.mendes87 em gmail.com
Qui Jun 8 07:19:50 -03 2006


Obrigado quanto a data e ao blob ('obs eu tenho o livro do Carlos Cantu
hehe') mas e quanto aos campos Null no access que estou tendo que tratar
para jogar no Firebird. (Se for NULL então é "").

Em 07/06/06, Otto <ottofuch em terra.com.br> escreveu:
>
> Não fique aborrecido comigo, mas compre o livro Firebird Essencial do
> nosso
> colega Carlos Cantu para obter uma visão de conjunto. Quanto ao SQL do
> Access e do Firebird há diferenças (a data no Acces é escrita como
> #12/31/2005# e no Firebird como '31.12.2005' para ser apresentado no
> formato
> DDMMAAAA, e como '12/31/2005' para ser apresentado no formato MMDDAAAA.
> O campo MEMO do Access é um subtipo do tipo de campo BLOB (Binary Large
> OBject).
> []´s
> Otto
> ----- Original Message -----
> From: "Paulo Henrique Mendes Martin" <paulo.mendes87 em gmail.com>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Wednesday, June 07, 2006 7:25 PM
> Subject: [firebase-br] Ajuda em Insert
>
>
> 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
>
>
>
>
> ______________________________________________
> 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