Você está na página 1de 9

Conhecendo o Firebird

Se voc procura um banco de dados fcil de utilizar, compacto, com recursos de um


SGDB bom, grtis e principalmente confivel, precisa conhecer o Firebird.
O Firebird um banco de dados Cliente/Servidor relacional compatvel com SQL-ANSI92 e que foi desenvolvido a partir do Cdigo do Interbase 6 para ser independente de
plataformas
e
de
sistemas
operacionais.
Uma de suas vantagens a dispensa do uso de Administradores de Banco de Dados
(DBA). De fcil utilizao, basta instalar o software, sem a interferncia freqente de
profissionais na manuteno do banco, alm disso, dispensa o uso de superservidores, utilizando, em situaes normais, pouco espao em disco e memria. Por
isso, a plataforma necessria para a sua instalao e utilizao pode ser reduzida,
diminuindo
consideravelmente
os
custos
do
projeto.
Seu desenvolvimento iniciou em meados de 1985 por uma equipe de engenheiros da
DEC ( Digital Equipament Corporation ). Tendo como nome inicial de Groton, o produto
sofreu varias alteraes at, finalmente em 1986 receber o nome de Interbase
iniciando na verso 2.0 e hoje estando na verso 7. Desenvolvido por um grupo
independente de programadores voluntrios, o cdigo fonte do Firebird baseado no
InterBase(tm) 6.0, disponibilizado pela Borland sob a licena IPL (InterBase Public
License v.1.0) em 25 de Julho de 2000. O cdigo da verso atual do FB foi submetido
a uma extensa limpeza, eliminao de "bugs", passando por vrias verses "beta",
durante os anos que passaram entre a disponibilidade do cdigo fonte e o lanamento
desta verso. A On-Disk Structure ainda a ODS 10. Algumas funcionalidades que
obrigam a alterar a ODS foram adiadas para uma verso posterior. Foram adicionadas
algumas extenses linguagem, mas hoje, ainda so compatveis as linguagens, por
exemplo, se voc tem um sistema rodando Interbase 6, pode migrar para o Firebird
sem problemas, apenas removendo o Interbase e instalando o Firebird, recomenda-se
que se faa um backup e um restore no banco aps a migrao.O publico alvo do
Firebird so pequenas, mdias e grandes empresas que procuram um banco de dados
confivel, pratico e grtis. Uma pesquisa realizada pelo site Firebase(
www.firebase.com.br ), mostra que 50,37% dos usurios do site utilizam Firebird e os
outros 49,63% utilizam verses do Interbase(5,6,7), isso mostra que mesmo sendo
um banco novo no mercado, o Firebird esta crescendo muito. Sua utilizao
bastante vasta, podendo ser usado tanto em aplicaes Client/Server como em
pginas da Internet, existem vrios sites utilizando e aprovando seu desempenho.
Se o Firebird to bom, porque ele no to badalado como o Oracle, o Microsoft SQL
server e outros servidores SQL ?
O Firebird no to famoso quanto o Oracle, ou o SQL Server porque ainda pouco
conhecido, muita gente no sabe de suas qualidades, mas, isso tende a mudar
gradativamente, hoje em dia, no Brasil por exemplo, j temos muito material na
Internet sobre Firebird, o que h pouco tempo atrs no existia.
Segue abaixo algumas de suas especificaes:
Open-source

Significa que possui seu cdigo fonte disponibilizado. Voc pode baixar na Internet a
instalao, os fontes e sua documentao, instal-lo e utiliz-lo normalmente, sem
custo algum.
Supote protocolos de rede
Protocolo um conjunto de regras que definem como os dados sero transmitidos;
como ser feito o controle de erros e retransmisso de dados; como os computadores
sero endereados dentro da rede etc. Um micro com o protocolo NetBEUI instalado,
s ser capaz de se comunicar atravs da rede com outros micros que tambm
tenham o protocolo NetBEUI, por exemplo. possvel que um mesmo micro tenha
instalados vrios protocolos diferentes, tornando-se assim um poliglota. O Firebird
suporta os seguintes protocolos:

TCP/IP para todas as plataformas;


NetBEUI;
IPX/SPX;

Compatibilidade com ANSI SQL-92


Isso facilita e muito quem est migrando de outros bancos para o Firebird, pois o ANSI
SQL o padro internacional utilizado pela grande maioria de sistemas de bases de
dados.
Instalao Rpida
Voc faz a instalao rapidamente e sem dificuldades. O firebird ocupa pouco espao
em disco. Para efetuar o download do Firebird, acesse o site: www.firebirdsql.com
Stored Procedures (procedimentos armazenados)
So procedimentos armazenados no banco que executam vrias tarefas. O Firebird
possui um tipo de linguagem de programao com comandos FOR, IF, etc. As Stored
Procedures possuem a grande vantagem de serem executadas diretamente no
Servidor, fazendo com que a rede fica menos carregada, a regra para utiliz-las bem
simples, onde der pra usar Stored Procedures use, testes comprovam que o uso delas
aumenta e muito a velocidade da aplicao. Abaixo segue 5 motivos pra utiliz-las:
4. Reduzir o trfico de rede.
5. Criar um conjunto comum de regras de negcio no banco de dados que se
aplicar a todas as aplicaes cliente.
6. Fornecer rotinas comuns que estaro disponveis para todas as aplicaes
cliente reduzindo assim o tempo de desenvolvimento e manuteno.
7. Centralizar o processamento no servidor e reduzir os requisitos de hardware nas
estaes cliente.
8. Aumentar a performance das aplicaes.
Triggers (gatilhos)
Triggers so bem parecidos com Stored Procedures, exceto que triggers so
executados automaticamente quando uma alterao ocorre a tabela na qual ele est

conectado, alm disso, triggers no possuem parmetros de entrada e no retornam


valores.
Acesso simultneo a mltiplos bancos de dados
Uma ou mais aplicaes podem acessar vrios bancos de dados ao mesmo tempo. Por
exemplo, voc pode ter um banco de dados onde guardado informaes do seu
sistema interno e um de sua pgina da Internet. Sua aplicao pode acessar, atravs
de mltiplas conexes, os dados de ambas as bases.
Campos Blob
Tipo de dados cujo tamanho aumentado dinamicamente, podendo conter texto ou
dados no formatados (binrios), como fotos, textos, resumindo qualquer tipo de
arquivo.
Otimizao de Queries
Queries so comandos que sero executados pelo banco de dados. O Firebird otimiza
queries automaticamente ou, caso prefira, pode ser especificado um plano(PLAN) de
acesso manualmente.
Funes de Usurio (UDFs)
Mdulos de programa que rodam no servidor, adicionando funces ao servidor de
acordo com as necessidades do usurio. Uma funo definida pelo usurio (UDF)
meramente uma funo escrita em qualquer linguagem de programao capaz de
gerar uma biblioteca compartilhada. No Windows, essas bibliotecas so mais
conhecidas pelo nome de Dynamic Link Libraries (DLL's).
Junes Externas (Outer Joins)
Construo de relaes entre duas tabelas que habilita operaes complexas.
Matrizes Multidimensionais
Suporte nativo a arrays multidimensionais utilizados em aplicaes cientficas e
financeiras. Um nico campo do banco pode guardar um array de at 16 dimenses,
simplificando o desenvolvimento e aumentando o desempenho destas aplicaes.
Shadows
um recurso de sombreamento de arquivos de banco de dados para preveno de
"crash" em disco rgido, falha de rede ou deleo do banco. A maior vantagem de se
trabalhar com shadows est ligada segurana. Problemas de falha em disco rgido ou
remoo indevida de arquivos GDB so facilmente contornados, quando voc tem uma
"shadow". Ela uma cpia idntica do seu arquivo de banco de dados que pode
rapidamente ser ativada para substituir o banco principal. No necessrio o uso
exclusivo do banco no momento da criao das shadows. Shadows no requerem
nenhuma manuteno ou administrao.

Travamento otimista
Quando um usurio processa uma alterao o registro no impedir que outras
pessoas leiam ou tentem tambm alterar este registro. Quando um usurio comea a
alterar um registro no Firebird, uma cpia do registro original salva. O usurio
executa seu servio, mas os outros usurios no esto sob nenhuma forma impedidos
de acessar o mesmo registro, esse tipo de travamento chamado de Travamento
Otimista. O Firebird utiliza tecnologia de travamento otimista para proporcionar grande
taxa de uso de operaes de banco de dados para clientes, ele implementa
travamentos a nvel de linha reais para restringir mudanas somente nos registros do
banco de dados que um cliente modifica, diferente de travamentos a nvel de pgina,
que restringe qualquer dado arbitrrio que estiver armazenado fisicamente prximo no
banco de dados. Travamentos a nvel de linha permitem mltiplos clientes atualizarem
dados em uma mesma tabela sem conflito, resultando em menor serializao das
operaes de bancos de dados.
API do Firebird
So funes do prprio Firebird que habilitam construo e acesso direto ao servidor
com o recebimento e retorno. Por exemplo voc pode usar a API pra criar seu banco
automaticamente, sem ter que envi-lo junto com a aplicao para o Cliente.
Multiplataforma
O Firebird trabalha em vrios sistemas operacionais, veja a tabela abaixo.

Suporte a Mltiplos Arquivos


Voc pode dividir seu GDB em vrios arquivos, no caso de arquivos muito grandes que
no so suportados pelo S.O. O limite de tamanho do GDB o limite do tamanho de
um arquivo no Sistema Operacional.
Usurios de peso

Voc pode encontrar uma listagem de empresas que utilizam o Firebird nos sites
www.ibphoenix.com e www.firebase.com.br
Tipos de Dados
O Firebird, usando Dialeto 3, suporta a maioria dos tipos de Dados do SQL, sendo que
o tipo Boolean ainda no est disponvel. Mas, isto no uma falha, outro SGDBs
tambm no tem este tipo de dado. Apesar de no possuir o tipo boolean, podemos
emular um "tipo boolean" atravs de DOMAINS.
Os tipos de dados disponveis so BLOB, CHAR(n), VARCHAR(n), DATE, TIME,
TIMESTAMP, DECIMAL, NUMERIC, SMALLINT, INTEGER, FLOAT, DOUBLE PRECISION.
Comparativo de preos
Estas informaes foram retiradas da Borland Online Store.
Preos do Interbase 7:

Comparativo entre Interbase 7 e outros Bancos de Dados, lembrando que o Firebird


totalmente grtis:

Comparao tcnica
Comparativo

MS
Interbase Firebird Interbase
PostgreSQLOracle
MySQL
SQL
Free
Comercial
X
X
X
X

* Open Source
Plataformas
* Linux
X
* FreeBSD
X
* Windows
X
* Sun Solaris
X
* Mac OS X
X
* IBM AIX
X
* HP UX
X
Caractersticas
* ACID
X
*
Stored
Procedures
/X
Triggers
*
Transaes
X
Concorrentes
* ANSI SQL 99
X
* ANSI SQL 92
X
* Sem limites de
X
usurios
*
IntegridadeX

X
X
X

X
X
X

X
X
X
X
X

X
X
X
X

X
X

X
X
X

X
X
X

X
X

Referncial
* Transaes
* ODBC Free

X
X

X
X

X
X

X
X

X
X

X
X

Principais ferramentas de manuteno do Firebird (Windows)


O Firebird possui vrias ferramentas de manuteno de bancos de dados:
IBConsole(Interbase), IBAcces, Quick Desk, IBExpert entre outros. Eu particularmente
utilizo o IBExpert por ser bem fcil de usar e bem completo. Antes de instalar o
IBExpert, baixe o Firebird no site www.firebirdsql.com .
Instale-o
normalmente
e
depois
execute
o
Firebird
(/Dretrio
de
Instalao/Bin/IBServer.exe), isso far com que o Firebird entre em execuo. Para
que sempre que iniciar o Windows o servidor seja executado, adicione o IBServer.exe
no Menu Iniciar do Windows.
Agora baixe o IBExpert Personal no site do IBExpert( www.ibexpert.com ). Lembrando
que o IBExpert Personal uma verso FreeWare do IBExpert. Abra o IBExpert, vamos
nos conectar ao Banco Employee.gdb que acompanha os exemplos do Firebird 1.0.
Siga os passos a seguir:
Clique em Database depois em Register DataBase, como na figura abaixo:

Agora, preencha os dados do Formulrio como na figura abaixo, em Server o valor


LOCAL, em Database File, informe o diretrio da sua instalao do Firebird mais
\examples\EMPLOYEE.GDB(Ex:
c:\arquivo
de
programas\firebird\example\EMPLOYEE.GDB), no Database Alias informe Exemplo, no
Login informe SYSDBA e na Senha masterkey(minusculo).(SYSDBA o usurio

principal do Firebird, ele tem acesso completo e j vem pr definido pelo banco. Clique
em Register para registrar o banco de dados.

Do lado esquerdo do vdeo aparecer agora o banco Exemplo, d um duplo clique


sobre ele para expandir e visualizar os detalhes desse banco. Clicando em tabelas, se
expandir as tabelas do banco EMPLOYEE. Mais um duplo click sobre a tabela
COUNTRY, veremos suas informaes, como: Fields, Constraints, Dependencies, etc..
Clicando na Aba Data, voc tem os seus registros em um Grid, podendo alter-los.
Para executar comandos SQL no banco de dados, selecione no Menu Tools->Script
Executive, ou Ctrl+F12, marque a opo Use Current Conection, como na figura
abaixo. Agora s digitar as linhas SQL e clicar em Run Script ou pressionar F9.

Vamos agora, criar uma tabela nova no nosso Banco EMPLOYEE, no Script Executive,
digite o seguinte:
CREATE TABLE TABTESTE( CODIGO INTEGER NOT NULL, NOME VARCHAR(30) NOT
NULL, SALARIO NUMERIC(12,2), PRIMARY KEY(CODIGO));
Clique em Run Script ou pressione F9, agora v at as tabelas do nosso banco
registrado e repare que j est criada a tabela TABTESTE, com os campos que
definimos e com o campo Cdigo como chave primria. Para alimentarmos a tabela
TABTESTE, podemos dar duplo click nela e abrir a aba Dados, ou ento rodarmos
Scripts utilizando o comando INSERT INTO, por exemplo:
INSERT INTO TABTESTE (Codigo,Nome,Salario) VALUES(1,Rodrigo Cardoso,1588);
Basta executar essa linha que um novo registro ser inserido na Tabela TABTESTE.
Concluso
O Firebird satisfaz as expectativas de quem precisa de um banco confivel, robusto, e
Open Source. H algum tempo atrs poderamos at reclamar do fato do Firebird ter
pouca documentao mas, hoje em dia temos muitas fontes e listas de discusso na
Internet, fazendo com que o Firebird fique cada vez mais forte. Est na hora de voc
rever seus conceitos sobre banco de dados. Vimos um exemplo simples de acesso ao
Firebird, agora mos a obra!
Autor: Rodrigo Aparecido Cardoso <rcardoso_at_datasystemnet.com.br>

Você também pode gostar