Esse artigo faz parte da revista Java Magazine edição 59. Clique aqui para ler todos os artigos desta edição

AN style="FONT-SIZE: 10pt; BACKGROUND: white; COLOR: red; FONT-FAMILY: Verdana; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial">

left>Uso de bancos de dados em aplicações móveis é algo essencial nos aplicativos. Neste artigo veremos como o Android utiliza bancos de dados SQLite para a persistência de dados das aplicações.

 

Para que serve:

Conhecer o uso de bancos de dados no Android, fornecer um meio de criar bancos de dados nos aplicativos, aprender métodos para manipular bancos de dados e registros, e também gerenciar o banco através da ferramenta externa sqlite3.

 

Em que situação o tema é útil:

No desenvolvimento de aplicativos para Android, é necessário, em diversas aplicações, realizar o uso de bancos de dados. Devemos aprender a manipular o banco (abrir, fechar, etc) e os registros (inserir, ler, etc).

 

Gerenciando bancos de dados no Android - Resumo DevMan:

O projeto Android ainda é uma novidade, mas já desperta muita curiosidade e conquista novos desenvolvedores interessados em conhecê-lo. Para persistência de dados ele utiliza bancos de dados SQLite, e fornece uma API para acesso e manipulação dos dados, como comandos para executar códigos SQL padrão. Também é possível utilizar a ferramenta sqlite3 para olhar as tabelas exitentes e seus conteúdos, executar comandos SQL, e comandos próprios da ferramenta.

 

Dispositivos móveis pessoais (celulares e PDAs) geralmente sofrem com o problema de poucos recursos computacionais, como memória e processador, em comparação com sistemas desktop, servidores, ou mesmo laptops.

As restrições de uso do dispositivo para armazenamento de dados em forma de bancos de dados dependem não apenas do espaço disponível, mas do suporte a este tipo de aplicação. Isso é muito dependente do sistema operacional oferecido.

Dispositivos móveis que usando a linguagem J2ME têm a opção do uso do RMS (Record Management System) para armazenamento de registros. A API J2ME fornece diversos métodos para a manipulação dos bancos e registros. Porém, os programadores reclamam da dificuldade de manipulação dos dados, pois os métodos existentes são de baixo nível, onde, por exemplo, é preciso serializar/deserializar para escrever e ler os dados, pois a API só persiste arrays de bytes.

Os dispositivos com suporte a bancos de dados SQL já permitem consultas de alto nível, usando os comandos SQL padrão. Para os dispositivos móveis existem alguns bancos SQL, como o OracleLite e o SQL Server Mobile Edition.

No caso do projeto Android, são utilizados bancos de dados SQLite, que não faz parte do projeto. O Android oferece então métodos para acessar e manipular esses bancos e as ferramentas necessárias para administração.

Neste artigo veremos como o Android utiliza o banco de dados SQLite, como métodos para abertura e fechamento de bancos e consultas SQL. Um estudo de caso, com uma aplicação no Android que faz o cadastro de uma “DVDteca”, será usado para exemplificar o uso destas duas tecnologias em conjunto.

SQLite

O SQLite é uma biblioteca C que implementa um banco de dados SQL embutido, que lê e escreve diretamente em arquivos do dispositivo. Isso permite o uso da linguagem SQL padrão, facilitando o uso de bancos de dados nos dispositivos móveis por programadores com conhecimento em SQL.

O código fonte do SQLite não possui licença e também não tem copyright. Mas oferece uma “benção” (publicada no website do SQLite):

Que você faça o bem e não o mal

Que você ache perdão para você mesmo e perdoe os outros

Que você compartilhe livremente, nunca pegando mais do que você dá.

 

O Android fornece suporte ao banco de dados SQLite oferecendo funções básicas de gerenciamento (criação, abertura, fechamento, etc) e também para armazenamento de coleções de dados complexos (compostos de muitos campos) empacotados em objetos.

Métodos para acesso ao SQLite

Além de oferecer os métodos de manipulação do SQLite, o Android também fornece uma ferramenta para acesso via linha de comando, que será mostrada adiante.

Principais métodos

O Android oferece diversos métodos para acesso ao SQLite. A Tabela 1 mostra alguns desses métodos.

 

Método

Descrição

SQLiteDatabase  createDatabase(String name, int version, int mode, CursorFactory factory)

Cria um banco com nome, versão, modo de leitura e escrita, associado com o contexto da aplicação (ver CursorFactory).

open(File file, CursorFactory factory)

Abre um banco de dados de um arquivo.

open(String path, CursorFactory factory)

Abre um banco de dados de um arquivo.

boolean  deleteDatabase(String name)

Apaga um banco de dados.

...
Quer ler esse conteúdo completo? Tenha acesso completo