A versão embedded do Firebird executa apenas em modo local, não reconhecendo nem mesmo localhost. Ela ignora qualquer instância do Firebird executando na mesma máquina. Procure usar sempre o usuário SYSDBA para a conexão com o banco. Como não existe a figura de um servidor de banco de dados, você poder rodar quantas aplicações forem necessárias. Cada uma será uma instância diferente. Tudo depende da memória da máquina.
Instalação do Firebird
O primeiro passo consiste em fazer o download da versão embarcada do Firebird. Escolha a versão e a plataforma desejada em http://www.firebirdsql.org/index.php?op=files. Vamos mostrar aqui apenas o procedimento para o ambiente Windows. Você deve baixar a versão embedded. Por exemplo, se optar pela versão 2.1.3, você pode baixar este zip. Depois disso, crie um diretório (p.ex. C:\MeuPrograma) onde ficará sua aplicação e descompacte o zip que você baixou dentro dele. Esse diretório será o home do Firebird embutido. O banco de dados deve ficar nesse mesmo diretório. Em seguida faça o seguinte:
1) Edite o arquivo firebird.conf e modifique a seguinte linha para ficar assim:
RootDirectory = C:\MeuPrograma
2) Altere o nome do arquivo fbembed.dll para fbclient.dll, se você for usar o ZeosLib. Se for usar o SQLdb, renomeie para gds32.dll.
Se sua aplicação utilizar UDFs, copie-as para o diretório UDF. Collates e charsets devem ser copiados para o diretório INTL.
Conectando ao banco de dados com ZeosLib
Coloque um TZConnection no Data Module. Defina as seguintes propriedades assim:
Database - informe apenas o nome do arquivo do banco de dados.
HostName - deixe em branco.
Name - dbEmbutido, por exemplo.
Password - masterkey.
Protocol - firebird-2.0.
User - sysdba.
Não tente conectar ao banco em tempo de desenvolvimento. Não irá conectar. Escreva o seguinte código no evento OnCreate do Data Module:
dbEmbutido.Connect;
Os outros procedimentos são exatamente os mesmos de uma conexão normal como mostramos em Lazarus - Conectando Firebird com ZeosLib ou SQLdb. Para construir uma interface leia os posts Lazarus - Acessando banco de dados com SQLdb - Parte I e Parte II.Se preferir usar SQLdb para embarcar sua aplicação siga exatamente o mesmo procedimento do post anterior. Só lembre de renomear fbembed.dll para gds32.dll.
Atualizado em 23/05/2010.
7 comentários:
Olá Professor Carlos, como vai?
Como procedo para desenvolver uma aplicação embarcada com Lazarus e Firebird no Ubuntu 9.10?
Obrigado pelas preciosas dicas. Parabéns pelo site.
Oi Geovane
Eu ainda não consegui também. Veja esses links:
http://www.firebirdfaq.org/Firebird-Embedded-Linux-HOWTO.html
http://www.firebirdsql.org/manual/ufb-cs-embedded.html#ufb-cs-embedded-linux
São dicas para a versão 1.5. Eu estou com a versão 2.1 no Ubuntu. E seguindo esses procedimentos não funciona. Ainda estou procurando mais informações.
Assim que eu conseguir vou publicar um post.
Abraço
tinha feito uma aplicacao a um tempo atras e nao lembrar ao certo os passos pra conectar.
grato
Prof. Carlos Araujo: Trabalho com programacao, em tempo parcial, porque
sou engenheiro metalurgista e dirijo
uma empresa.
Mas programo em Pascal (hoje Delphi)
h'a mais de 20 anos. Preciso de consultoria em FB-SQL, e gostaria de
discutir consigo como podemos ajustar
isso, em termos de tempo disponivel,
e forma de pagamento.
Alberto Caribe'
acaribe2000@that.com.br
Oi Alberto
Não consegui enviar e-mail a você. Pode entrar em contato pelo meu e-mail por favor.
Boa tarde Professor.
Uso o Firebird desde a versão 1.5 mas, até agora, não encontrei uma boa explicação sobre as diferrenças entre as diversas versões do mesmo.
O Sr. teria algum link com estas informações, ou poderia me responder sobre essas diferenças.
Gostaria de saber sobre o CS, o SS e as evoluções numéricas (melhorias/alterações).
Agradeço a atenção.
Luis
Aqui http://www.firebirdsql.org/en/release-notes/ tem alguma coisa que pode ser útil.
Postar um comentário