Thiago, só uma observação - no método query(), caso seja passado "null" para o parâmetro "columns", irá retornar todos os campos por padrão. :)
Thalita, uma observação no código do método inserirRonda é a seguinte:
.....
database.setTransactionSuccessful();
database.close();
} finally{
database.endTransaction();
database.close();
}
no finally já está sendo fechado o banco não precisa indicar o close() logo após o setTransactionSuccessful(). Creio que isso está interferindo na gravação, pois você está fechando a conexão antes de fechar a transação.
database.close();
} finally{
database.endTransaction();
database.close();
}
no finally já está sendo fechado o banco não precisa indicar o close() logo após o setTransactionSuccessful(). Creio que isso está interferindo na gravação, pois você está fechando a conexão antes de fechar a transação.
Pergunta: Tem certeza que a tabela tem registros?
--
Em 5 de julho de 2012 10:23, Thiago Lopes Rosa <thiago.rosa@gmail.com> escreveu:
Faltou dizer quais colunas você quer na query!Ou você faz um rawQuery com SELECT * FROM xxx....Thiago--On Thu, Jul 5, 2012 at 9:17 AM, Thalita Monteiro <temonteiroj@gmail.com> wrote:
Bom dia pessoas,Criei um banco,inseri dados, testei para ver se havia registros, porém quando eu faço um select ele retorna o Cursor nulo. Já pesquisei, já mudei tudo e nada mudou a situação.
Alguém aqui já passou por essa situação?
Segue o meu código para análise:
public class RdaDAO extends GenericDAO {
public RdaDAO(Context contexto) {
super(contexto);
}
public static final String TABELA_RDA = "dadosrda";
public static final String RONDA_CREATE_TABLE = "create table "
+ TABELA_RDA +" (_id INTEGER PRIMARY KEY AUTOINCREMENT, area TEXT,"
+ "telefone TEXT,telefone1 TEXT, telefone2 TEXT,celular TEXT, "
+ "latitude TEXT, longitude TEXT);";
/* INSERIR OS TELEFONES DO RDA */
public void inserirRonda(List<Rda> ronda){
DbAdapter helper = new DbAdapter(contexto);
database = helper.open();
database.beginTransaction();
try {
for(Rda anuncio : ronda){
ContentValues values = new ContentValues();
values.put("latitude", anuncio.getLatitude());
values.put("area", anuncio.getBairro());
values.put("longitude", anuncio.getLongitude());
if(anuncio.getTelefone().contains(" ")){
String[] telefone = getTelefone(anuncio.getTelefone());
for(int c = 0;c < telefone.length;c++){
if(c == 0){
values.put("telefone", telefone[c]);
}else if(c == 1){
values.put("telefone1", telefone[c]);
}else if(c == 2){
values.put("telefone2", telefone[c]);
}
}
}else{
values.put("telefone", anuncio.getTelefone());
}
database.insert(TABELA_RDA, null, values);
}
database.setTransactionSuccessful();
database.close();
} finally{
database.endTransaction();
database.close();
}
}
/* VERIFICA SE O TELEFONE CONTÉM O CARACTERE / O QUAL INDICA MAIS DE UM TELEFONE */
private static String[] getTelefone(String telefone){
String[] telefoneC = telefone.split("/");
return telefoneC;
}
/* CHECA SE A TABELA TEM VALORES */
public boolean hasData(){
boolean data = false;
DbAdapter helper = new DbAdapter(contexto);
database = helper.open();
Cursor id = database.rawQuery("SELECT COUNT(*) FROM dadosrda", null);
if(id != null){
id.moveToNext();
if(id.getInt(0) != 0 ){
data = false;
}else{
data = true;
}
}
database.close();
id.close();
return data;
}
/* RECUPERAR TODOS OS DADOS */
public Cursor getTodosAnuncios(){
DbAdapter helper = new DbAdapter(contexto);
database = helper.open();
return database.query(TABELA_RDA, null, null, null, null, null, null);
}
public List<Rda> listarTodosAnunciantes(){
Cursor cursor = getTodosAnuncios();
List<Rda> anunciantes = new ArrayList<Rda>();
if(cursor.moveToFirst()){
int nome = cursor.getColumnIndex("area");
int telefone = cursor.getColumnIndex("telefone");
int latitude = cursor.getColumnIndex("latitude");
int longitude = cursor.getColumnIndex("longitude");
do{
Rda anuncio = new Rda();
anunciantes.add(anuncio);
anuncio.setBairro(cursor.getString(nome));
anuncio.setTelefone(cursor.getString(telefone));
anuncio.setLatitude(cursor.getString(latitude));
anuncio.setLongitude(cursor.getString(longitude));
}while(cursor.moveToNext());
}
cursor.close();
database.close();
return anunciantes;
}
}
Vale lembrar que estou trabalhando com duas tabelas, pode ser isso também?--
Atenciosamente,
Thalita Monteiro Jorge.
Graduanda em Sistemas de Informação - FA7
![]()
![]()
"O importante é garantir os três pontos !"
Thiago Rosa
Analista-Programador






0 comentários:
Postar um comentário