| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/02/2012 15:16:17
|
graffiti75
Debugger
Membro desde: 03/02/2012 14:24:31
Mensagens: 74
Offline
|
Olá pessoal!
É a 1ª vez que posto no Guj. Se eu cometer algum erro de postagem, peço perdão desde já.
Enfim, estou criando um projeto e apenas parte dele funciona. Ele possui 3 tabelas, e destas, apenas 1 faz a pesquisa no Sqlite de forma correta. Por algum motivo desconhecido as outras 2 não o fazem corretamente. As tabelas se chamam Disciplina, Pergunta e Resposta. A pesquisa que funciona é a da tabela Pergunta.
Porém, quando insiro um dado na tabela Resposta, e faço sua pesquisa, ela funciona! Isso é intrigante.
Se alguém quiser dar uma olhada no meu projeto, eis o link dele logo abaixo.
http://www.4shared.com/rar/G7bta9S_/TesteSqlite.html
This message was edited 1 time. Last update was at 11/02/2012 02:17:51
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/02/2012 22:08:36
|
graffiti75
Debugger
Membro desde: 03/02/2012 14:24:31
Mensagens: 74
Offline
|
Gostaria de entender onde errei neste programa, pois ultimamente venho tentando manipular banco de dados em Android, mas sempre surge algum erro que impede que tudo funcione.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/02/2012 09:14:47
|
felipebonezi
JavaEvangelist
![[Avatar]](/images/avatar/e2f232687833a4fd8664f759d6474309.jpg)
Membro desde: 28/04/2010 12:28:06
Mensagens: 330
Localização: Recife/PE
Offline
|
Oi,
Olha esse post: http://debugcodigos.blogspot.com/2011/06/sqlite-para-android-como-utilizar.html
Espero ajudar. Qualquer coisa, fala ae.
Abraço.
|
Felipe Bonezi
Graduando em Engenharia da Computação-POLI/UPE
Blog Android/WP7/iOS @ Debug de Códigos
-
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/02/2012 11:26:03
|
graffiti75
Debugger
Membro desde: 03/02/2012 14:24:31
Mensagens: 74
Offline
|
Olá Felipe!
Estava dando uma olhada no seu link. A classe DataBase extende da classe SQLiteOpenHelper. Porém, neste link, a classe SQLiteOpenHelper não está explicitada.
Por isso, saí pelo Google procurando pela implementação de tal classe, e a encontrei no link abaixo:
http://www.netmite.com/android/mydroid/cupcake/frameworks/base/core/java/android/database/sqlite/SQLiteOpenHelper.java
Porém, está classe dá erro nos métodos .lock e .unlock da variável mDatabase, cuja declaração é:
Logo, seu link não funciona para meu teste.
Será que alguém não tem um exemplo básico de CRUD (Create, Read, Update e Delete) em SQLite de Android? Os que testei de sites como o do Felipe Silveira, e do livro do Ricardo Lecheta, funcionam em parte, mas não em sua totalidade.
O que eu precisava era de um CRUD que relacionasse 3 tabelas entre si, e que soubesse diferenciar quando o banco já foi criado e quando ele ainda não foi.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/02/2012 12:24:53
|
felipebonezi
JavaEvangelist
![[Avatar]](/images/avatar/e2f232687833a4fd8664f759d6474309.jpg)
Membro desde: 28/04/2010 12:28:06
Mensagens: 330
Localização: Recife/PE
Offline
|
Ué, o que eu te enviei faz o que você quer.
Quando você instancia, se ele não foi criado, ele cria. Se ele já está criado, ele apenas referência o database.
Acho que você não estendeu muito bem,
|
Felipe Bonezi
Graduando em Engenharia da Computação-POLI/UPE
Blog Android/WP7/iOS @ Debug de Códigos
-
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/02/2012 12:27:35
|
graffiti75
Debugger
Membro desde: 03/02/2012 14:24:31
Mensagens: 74
Offline
|
Opa, então testarei sem instanciar mesmo...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/02/2012 20:45:17
|
graffiti75
Debugger
Membro desde: 03/02/2012 14:24:31
Mensagens: 74
Offline
|
Olá!
Criei um projeto com as dicas daquele link que você me passou. Eis a estrutura do projeto:
http://www.4shared.com/photo/vnYFGHQh/FelipeBonezi.html
Eis o conteúdo da classe Disciplina.java:
Eis o conteúdo da classe DataBase.java:
Eis o conteúdo da classe LoginActivity.java:
E eis os erros que aparecem quando executo esta aplicação:
http://www.4shared.com/photo/HTA9g7bH/Erro_FelipeBonezi.html?
http://www.4shared.com/photo/zSWwJqy4/LogCat_FelipeBonezi.html?
Ou seja, são os mesmos erros do projeto inicial que postei nesse tópico. Que erros são esses? São os que estão reforçados em azul no último link acima.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/02/2012 14:19:53
|
felipebonezi
JavaEvangelist
![[Avatar]](/images/avatar/e2f232687833a4fd8664f759d6474309.jpg)
Membro desde: 28/04/2010 12:28:06
Mensagens: 330
Localização: Recife/PE
Offline
|
Retire a seguinte linha das variaveis da sua classe Database.
E dentro do seu método de incluir use:
Listar:
=)
|
Felipe Bonezi
Graduando em Engenharia da Computação-POLI/UPE
Blog Android/WP7/iOS @ Debug de Códigos
-
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/02/2012 16:01:25
|
graffiti75
Debugger
Membro desde: 03/02/2012 14:24:31
Mensagens: 74
Offline
|
Eu modifiquei a classe DataBase.java para o seguinte código, obedecendo suas dicas. Eu mantive a linha 16 porque ela é usada no método onCreate():
Na classe LoginActivity.java, descomentei as linhas 31 até 37:
Os erros obtidos são os mesmos que comecei a obter terça-feira da semana passada, que são erros como no such table, java.lang.RuntimeException: Unable to start activity ComponentInfo. Só a clássica Caused by: java.lang.NullPointerException, seguida de at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:203) que não apareceu desse vez.
02-07 19:42:46.388: I/teste(419): Listando disciplinas.
02-07 19:42:46.418: I/teste(419): 'ReadableDatabase()' obtido.
02-07 19:42:46.418: I/Database(419): sqlite returned: error code = 1, msg = no such table: quizz
02-07 19:42:46.418: D/AndroidRuntime(419): Shutting down VM
02-07 19:42:46.428: W/dalvikvm(419): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
02-07 19:42:46.448: E/AndroidRuntime(419): FATAL EXCEPTION: main
02-07 19:42:46.448: E/AndroidRuntime(419): java.lang.RuntimeException: Unable to start activity ComponentInfo{br.com.android.projeto/br.com.android.projeto.LoginActivity}: android.database.sqlite.SQLiteException: no such table: quizz: , while compiling: SELECT * FROM quizz ORDER BY id
02-07 19:42:46.448: E/AndroidRuntime(419): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
02-07 19:42:46.448: E/AndroidRuntime(419): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
02-07 19:42:46.448: E/AndroidRuntime(419): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
02-07 19:42:46.448: E/AndroidRuntime(419): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
02-07 19:42:46.448: E/AndroidRuntime(419): at android.os.Handler.dispatchMessage(Handler.java:99)
02-07 19:42:46.448: E/AndroidRuntime(419): at android.os.Looper.loop(Looper.java:123)
02-07 19:42:46.448: E/AndroidRuntime(419): at android.app.ActivityThread.main(ActivityThread.java:4627)
02-07 19:42:46.448: E/AndroidRuntime(419): at java.lang.reflect.Method.invokeNative(Native Method)
02-07 19:42:46.448: E/AndroidRuntime(419): at java.lang.reflect.Method.invoke(Method.java:521)
02-07 19:42:46.448: E/AndroidRuntime(419): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:86
02-07 19:42:46.448: E/AndroidRuntime(419): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
02-07 19:42:46.448: E/AndroidRuntime(419): at dalvik.system.NativeStart.main(Native Method)
02-07 19:42:46.448: E/AndroidRuntime(419): Caused by: android.database.sqlite.SQLiteException: no such table: quizz: , while compiling: SELECT * FROM quizz ORDER BY id
A questão é:
Eu preciso de um projeto Android que acesse banco de dados, e que crie tabelas (ou leia-as caso já existam), remova, insira e atualize, sem dar erros como os listados acima.
Já tentei diversas abordagens (Felipe Silveira, Ricardo Lecheta, Felipe Bonezi), mas elas sempre funcionam pela metade (ou só inserem, ou só pesquisam, ou só criam tabela toda vez, etc).
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/02/2012 10:06:15
|
marcelohd02
Thread.start()
![[Avatar]](/images/avatar/b57794e125013a078f1b0c7fa758420e.jpg)
Membro desde: 28/08/2008 12:00:55
Mensagens: 45
Offline
|
http://www.luiztools.com/post/Criando-uma-app-Android-com-banco-de-dados-SQLite.aspx
http://yuriadamsmaia.wordpress.com/2011/03/30/desenvolver-para-android-persistencia-com-sqlite-i-criando-o-modelo-e-dao/
http://yuriadamsmaia.wordpress.com/2011/04/01/desenvolver-para-android-persistencia-com-sqlite-ii-outros-metodos-para-o-nosso-crud/
Cara tem que funcionar se nao tem algo errado no Projeto
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/02/2012 10:08:54
|
marcelohd02
Thread.start()
![[Avatar]](/images/avatar/b57794e125013a078f1b0c7fa758420e.jpg)
Membro desde: 28/08/2008 12:00:55
Mensagens: 45
Offline
|
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/02/2012 10:17:50
|
graffiti75
Debugger
Membro desde: 03/02/2012 14:24:31
Mensagens: 74
Offline
|
Opa, valeu pela ajuda Marcelo!
Darei uma lida nesses links e testarei aqui.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/02/2012 20:39:09
|
graffiti75
Debugger
Membro desde: 03/02/2012 14:24:31
Mensagens: 74
Offline
|
Olá Marcelo.
Sobre os 3 links, sinceramente, eu os achei bastante incompletos.
Faltam trechos de código e as explicações são meio vagas as vezes. Em algumas partes há trechos de código a serem digitados mas não se sabe em que arquivo .java devem-se digitá-los.
Para ambos os exemplos (1º, e o 2º e 3º links), quando terminei de copiar os códigos passados pelos tutoriais, o que via na tela era um monte de erros, simplesmente porque faltavam linhas de código ou porque não havia sido explicitada alguma estrutura do layout.
Tentei baixar o código-fonte do exemplo do Yuri Adams, porém, aquele Github está sempre fora do ar.
Sigo tentando encontrar um exemplo completo de CRUD em Android, para que enfim eu possa concluir que o manuseamento de Banco de Dados em Android é possível e fácil de ser implementado.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/02/2012 20:44:42
|
graffiti75
Debugger
Membro desde: 03/02/2012 14:24:31
Mensagens: 74
Offline
|
Alguém aqui do Guj poderia postar um projeto completo de CRUD em Android? É só isso que peço. Eu daria uma olhada no código-fonte e me viraria. Mas para me virar, preciso ter um exemplo funcional.
Acho muito mais simples ter o código completo para dar uma olhada do que tutoriais incompletos que nos induzem a completar de forma aleatória os trechos de código que ficam faltando.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/02/2012 02:17:38
|
graffiti75
Debugger
Membro desde: 03/02/2012 14:24:31
Mensagens: 74
Offline
|
Depois de 13 tentativas esta noite (estava a 8 horas sem parar tentando), e 22 no total (desde segunda-feira passada), achei um link que resolveu meu problema:
http://www.androidbrasilprojetos.org/android/introducao-a-banco-de-dados-android/
Ele realiza um CRUD em Android. E se o banco não existe, o cria. Se existe, o mantém.
Vou mudar o status do tópido para "resolvido".
|
|
|
 |
|
|