Você está na página 1de 7

Programação para

Dispositivos Móveis

Conteúdo
• Processamento de Bancos de
Dados em Android.
• Exercícios.

Prof. Ledón
Métodos recomendados para alterar o BD (classe SQLiteDatabase)
public int delete (String table, String whereClause, String[]whereArgs)
Este método retorna o número de linhas eliminadas se enviamos o parâmetro whereClause.
Caso contrário retornará 0 (zero). Para eliminar todas as linhas (muito perigoso) e obter
como retorno a quantidade de linhas eliminadas envie null em whereClause. O parâmetro
String[]whereArgs permite colocar ? como em prepared statements.

public int update (String table, ContentValues values, String


whereClause, String[] whereArgs)
Este método retorna o número de linhas alteradas (ou zero se não alterou nada).
A classe ContentValues será explicada nos próximos slides.

public long insert (String table, String nullColumnHack, ContentValues values)


Este método retorna o ID da linha inserida ou -1 caso aconteça algum erro na inserção.
Em nullColumnHack (parâmetro opcional, normalmente será null ou vazio) podemos especificar o nome
de uma coluna que pode ser nula, caso o argumento values seja enviado vazio, para inserir um registro
completamente nulo. A classe ContentValues será explicada nos próximos slides.
Estrutura básica para efetuar uma consulta a um BD (um exemplo)

Este é um exemplo com outro


banco de dados, que possui a
tabela 'contatos' e os campos
'nome', 'celular' e 'email'.
Uma classe HotelHelper2, derivada de SQLiteOpenHelper
package com.example.mfpledon.hotel2; //nome de pacote para todas as classes deste app
import android.content.Context;
import android.database.sqlite.*;

public class HotelHelper2 extends SQLiteOpenHelper {


private static final int versaoBD = 1; //versão do BD
private static final String strbancoDados = "dbHotel2"; //nome do BD

private static final String strCriarTabela1 = "CREATE TABLE tblHabitacoes"


+ " (codHabitacao int PRIMARY KEY, qtdePessoas int, precoDiaria float);";
private static final String strCriarTabela2 = "CREATE TABLE tblFuncionarios "
+ " (cpf varchar(14) PRIMARY KEY, nome varchar(80), idade int, salario float);";

HotelHelper2(Context context) {
super(context, strbancoDados, null, versaoBD);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(strCriarTabela1);
db.execSQL(strCriarTabela2);
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) { }
}
Exercício
Utilizando a nova classe
HotelHelper2 antes proposta,
elabore um app Android com uma
tela para processar os dados da
tabela tblHabitacoes (os dados das
habitações do hotel) e outra tela
para processar os dados da tabela
tblFuncionarios (com os dados dos
funcionários).

Estas duas tabelas pertencem ao


banco de dados dbHotel2.

Obs: a tela ao lado, para cadastro e


alteração dos dados das habitações
do hotel, já foi implementada.
Exercício (cont.)

A segunda tela para processar os


dados da tabela tblFuncionarios (com
os dados dos funcionários) está
incompleta.

Complete a tela com os campos


necessários para digitação dos dados
de um funcionário.

Modifique a lógica do botão para


Inserir um funcionário (está 50%).
Listar está implementada 100% (versão
simples)

Adicione dois botões para Alterar e


Eliminar um funcionário do hotel e
programe a lógica destas operações.
Bibliografia sugerida

• ANDROID. Android Developers. Disponível permanentemente em


http://developer.android.com.
• LECHETA, RICARDO R. Google Android, Aprenda a criar aplicações para
dispositivos móveis com o Android SDK. São Paulo: Novatec, 2010.
• MEDNIEKS, Z. et. al. Desenvolvimento de Aplicações Android. São Paulo:
Novatec, 2009.
• LEE, Wei-Meng. Introdução ao Desenvolvimento de Aplicativos para o
Android. Rio de Janeiro: Editora Ciência Moderna, 2011.

Você também pode gostar