Home > Firebird > Migrando para Firebird 2

Migrando para Firebird 2

Já iniciamos o processo de adaptação dos nossos aplicativos para o Firebird 2 aqui na Cadena. Hoje saiu o RC5, que tem grandes chances de ser a versão final.

O único ajuste necessário que encontramos até agora foi corrigir os comandos SQL que não usavam o alias das tabelas corretamente, o que no Firebird 2 é obrigatório. Exemplo:

SELECT C.NOME, V.DATA, V.VALOR
  FROM VENDAS V
  JOIN CLIENTES C ON CLIENTES.CODIGO = VENDAS.CLIENTE

Esse comando funcionaria no FB 1.x, mas não funciona no FB 2, pois você está definindo um alias para as tabelas, mas em outro local (nesse caso no JOIN) está usando o nome completo da tabela.

No FB 2, quando você declara um alias para uma tabela, você é obrigado a utilizá-lo em todo o SQL. Eu gostei dessa imposição, pois acaba deixar as instruções SQL mais organizadas.

Então essa instrução acima ficaria assim no FB 2:

SELECT C.NOME, V.DATA, V.VALOR
  FROM VENDAS V
  JOIN CLIENTES C ON C.CODIGO = V.CLIENTE

Uma ótima referência para a migração e que está nos ajudando muito é o livro Firebird 2 do Cantu (foto acima). Ele traz todas as novidades e destaca as diferenças para quem está migrando.  Se você trabalha com FB profissionalmente, é um investimento valioso.

Categories: Firebird Tags:
  1. Leonardo Silva
    October 4th, 2006 at 09:28 | #1

    Erick, qual o metodo de acesso que vocês fazem ao Firebird ? ADO, BDE, DBX, ou algum proprietário ? Vou ser sincero, em todos os meus sistemas, até hoje só usei ADO. Pode não ser um primor de performance, mas é bem aceitavel, e nunca tive problemas de incompatibilidade.

  2. October 4th, 2006 at 10:19 | #2

    Usamos DBX desde sempre e estamos satisfeitos.

  3. Ediberto Alves
    October 5th, 2006 at 09:13 | #3

    Erick,
    Será que vai haver alguma imcompatibilidade do DBX com o FB 2 ????

    Grato.

  4. October 5th, 2006 at 09:34 | #4

    Duvido muito, não encontrei nada ainda.

  5. Anderson
    October 5th, 2006 at 11:33 | #5

    Alguém sabe se existe incompatibilidade entre componentes Interbase Express e o Firebird 1.5.3 e mais recentemente o Firebird 2.0 ??

    Pergunto isto porque muitos falam que poderá haver no futuro e outros dizem que há (só que não sabem responder quais são os problemas). Já tenho alguns aplicativos usando componentes UIB e DBX, mas a Interbase Express ainda tem por enquanto o conjunto mais completo.

    Se alguém souber de algo e puder responder, agradeço.

  6. Rodrigo
    January 21st, 2007 at 11:53 | #6

    Erick, utilizo o firebird a algum tempo com o IBX, porém, como surgiu a necessidade de utilizar no desenvolvimento mais de um banco de dados, então resolvemos migrar as aplicações para DBX. Gostaria de saber, qual driver você utiliza em suas aplicações. Se o driver for de terveiros, por favor, divulgue o site do fabricante…

  7. January 21st, 2007 at 16:52 | #7

    Ainda estou utilizando o driver do Interbase mesmo, que acompanha o Delphi.

  8. Augusto Tavares
    April 2nd, 2007 at 14:56 | #8

    Eu encontrei pela primeira vez problema no DBExpress com firebird 2 com multiple layers (select ….. (select …. from …) from ….

  9. Richard
    July 6th, 2007 at 13:55 | #9

    estou usnado os componentes de conexao do nativo do interbase, porem nao consegui acessar o firebird 2… sera q nao a compatibilidade …
    obs:( tenho uma aplicacao com esses componentes… terei q mudar todos entao…? :(

  10. July 7th, 2007 at 11:41 | #10

    Tenho usado IBX em um projeto sem problemas. Quais componentes você está usando?

  11. Casþer
    February 7th, 2008 at 16:34 | #11

    Estou utilizando ibx com fb2.0 e tive problemas em acessor o db pela rede. Terei que substituir o ibx ou voltar pra fb1.5.

  12. February 7th, 2008 at 16:58 | #12

    Casþer, já usei IBX com FB2 sem nenhum problema. Verifique tudo novamente.

  13. Marcos
    May 11th, 2008 at 19:38 | #13

    Utilizo em todos projetos o componente IBClientDataSet, mas ele sumiu do Delphi 2007. Existe alguma instalação para repor aquele componente ?

  14. Sergio
    February 12th, 2009 at 12:55 | #14

    Qual a melhor forma de migrar para o Firebird 2.0 ?
    Extrair os Metadados do Banco na 1.5 e recriá-los na 2.0 é uma boa alternativa, ou não precisa de nada disso ?