SQLite um banco de dados pequeno e eficiente

O SQLite é um gerenciador de bases de dados que segundo os seus desenvolvedores é auto-contido, independente de uma estrutura cliente-server, dispensa configurações e ainda possui uma estrutura transacional.

Ele pode ser livremente distribuído e por ser pequeno pode facilmente ser embarcado em telefones celular, PDAs, MP3 etc. E o código fonte, obviamente pode ser manipulado ao seu gosto conforme licença de uso. Sem contar que ele ainda é apoiado por pesos pesados da industria de software como Adobe, Mozilla e Symbian.

Apresentando

Todo mundo que desenvolve profissionalmente, ou mesmo por hobby e usa banco dedados já deve ter ouvido falar de Oracle, MS-SQL, PostgreSQL, MySQL entre outros pesos pesados da área de database.

Também já devem ter ouvido de outros não tão pesados mas tão populares quanto. É o caso o Firebird por exemplo. Mas pouquissimas pessoas já ouviram falar de SQLite.

O SQLite é um gerenciador de bases de dados que segundo os seus desenvolvedores é auto-contido, independente de uma estrutura cliente-server, dispensa configurações e ainda possui uma estrutura transacional.

Ele pode ser livremente distribuído e por ser pequeno pode facilmente ser embarcado em telefones celular, PDAs, MP3 etc. E o código fonte, obviamente pode ser manipulado ao seu gosto conforme licença de uso. Sem contar que ele ainda é apoido por pesos pesados da industria de software como Adobe, Mozilla e Symbian.

Recursos

Atualmente na versão 3.5.9, lançada em 14/Maio ele conta com recursos como:

  • Transações atômicas, consistentes, isoladas e duráveis (ACID);
  • Configuração ZERO (nada de configurar dezenas de parâmetros só para criar uma agenda telefônica;
  • Implementa maior parte do padrão SQL92 (veja quais são os recursos ainda não é suportado);
  • Dados armazenados em um simples arquivo multi-plataforma;
  • Capaz de manipular bases de dados de alguns terabytes contendo strings e blobs com vários gigabytes (Veja os limites reais);
  • Código altamente compacto. Menos que 250KB se configurado com todos os opicionais ou menos que 150KB se você “capar” o coitado na hora da compilação;
  • Mais rápido que sistemas alguns populares sistemas cliente/servidor em certas operações;
  • API realmente simples de se usar;
  • Escrito ANSI-C, mas possuindo “conector” para diversas linguagens tal como Python, Ruby, Delphi, Flash (Action Script 2), Java, Javascript, Lua, .NET, PHP, e mais um monte de lingugens que eu nem sabia que existia 😉 ;
  • Código fonte bem documentado – para quem quer conhecer um sistema SGBD por dentro;
  • Autocontido – Sem dependências externas
  • Portável para Linux, MacOS, OS/2, Windows e se surgir outra plataforma dizem que é fácil portar;

Na prática

Eu tenho usado o SQLite em testes de aplicações que usam bases de dados. Por exemplo, atualmente estou refazendo um sistema para gerenciamento da rede que administro me Python+MySQL, mas como o MySQL é pesado demais só para fazer testes locais, eu uso o SQLite e depois apenas substituo as chamadas de função da camada de base de dados.

Talvez alguém estranhe o fato de toda a base estar em um único arquivo, mas isso não degrada a performance do sistema e essa metodologia não é nova, afinal de contas o MS Access cria um arquivo “.mdb” a anos onde além da base de dados propriamente dita, armazena também todo código fonte da sua aplicação.

Existem centenas de artigos publicados na Internet que podem atestar o poder do SQLite, então vou evitar o esforço de escrever mais um e apenas referenciar alguns que achei interessantes, mas não deixe procurar no oráculo, pelo assunto, que você encontrará mais informações do que imagina e vai se surpreender.

Saiba mais

O site oficial do SQLite tem praticamente tudo que você precisa para começar a desenvolver aplicações com esta base de dados.

Não deixe de ler a definição do SQLite na Wikipédia possuindo alguns link interessantes.

No site HTML Staff há um interessante e simples exemplo de uso do SQLite com o PHP.

Apesar de ter dito que daria apenas sites em português, acho que este link é interessante demais para ser descartado. Um vídeo com o próprio criador do projeto comentando sobre o sistema no Google Summer 2006.

Administrador de bases de dados SQLite via WEB (SQLite Manager)

SQLite Database Browser administrador em Qt (SQLite Database Browser SQLite)

Driver para ler SQLite no OpenOffice.org (Driver SQLite)

One thought on “SQLite um banco de dados pequeno e eficiente”

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *