Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] Dúvidas com SQLite (tentando implementar exemplo do livro do Lecheta)

fez exatamente isso ?

public void onCreate(Context ctx,SQLiteDatabase db){       //openOrCreateDatabase --> Cria ou Abre banco de dados       //(nome.db,permissão (modo), ...)       // MODE_PRIVATE --> Priva o acesso do banco para somente aplicação       db = ctx.openOrCreateDatabase(this.DATABASE_NAME,Context.MODE_PRIVATE, null);       db.execSQL(this.SQL_CREATE); //Criando tabela caso não exista!!       db.close();   }

Atenciosamente

Gorio
(www.gorio.eng.br)

 


2015-10-07 9:01 GMT-03:00 L. <carisio@gmail.com>:
Bom dia pessoal,

estou tentando fazer os exemplos do capítulo 14 do livro do Lecheta e estou tendo alguns problemas tentando acessar o banco.

Criei um banco de dados de teste usando a ferramenta SQLite Expert e populei de acordo com o que ele fala no livro. Depois disso, usando a aba File Explorer do eclipse, enviei o arquivo do banco ("livro_android") para a pasta data\data\livro.android.cap14\databases\ 

O erro está dando na linha que tenta abrir o banco:

public static final String NOME_BANCO = "livro_android";
public static final String NOME_TABELA = "carro";

db = ctx.openOrCreateDatabase(NOME_BANCO, Context.MODE_PRIVATE, null);

Eu não entendi muito bem o que está acontecendo e como tentar resolver isso. Alguém pode dar uma luz?
Segue log do LogCat:

10-07 11:52:53.265: I/Database(289): sqlite returned: error code = 14, msg = cannot open file at source line 25467
10-07 11:52:53.265: I/Database(289): sqlite returned: error code = 14, msg = prepared statement aborts at 37: [CREATE TABLE IF NOT EXISTS android_metadata (locale TEXT)]
10-07 11:52:53.265: E/Database(289): CREATE TABLE android_metadata failed
10-07 11:52:53.305: E/Database(289): Failed to setLocale() when constructing, closing the database
10-07 11:52:53.305: E/Database(289): android.database.sqlite.SQLiteException: unable to open database file
10-07 11:52:53.305: E/Database(289): at android.database.sqlite.SQLiteDatabase.native_setLocale(Native Method)
10-07 11:52:53.305: E/Database(289): at android.database.sqlite.SQLiteDatabase.setLocale(SQLiteDatabase.java:1950)
10-07 11:52:53.305: E/Database(289): at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1818)
10-07 11:52:53.305: E/Database(289): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:817)
10-07 11:52:53.305: E/Database(289): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:851)
10-07 11:52:53.305: E/Database(289): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:844)
10-07 11:52:53.305: E/Database(289): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:540)
10-07 11:52:53.305: E/Database(289): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:203)
10-07 11:52:53.305: E/Database(289): at livro.android.cap14.RepositorioCarro.<init>(RepositorioCarro.java:25)
10-07 11:52:53.305: E/Database(289): at livro.android.cap14.CadastroCarros.onCreate(CadastroCarros.java:26)
10-07 11:52:53.305: E/Database(289): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-07 11:52:53.305: E/Database(289): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-07 11:52:53.305: E/Database(289): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-07 11:52:53.305: E/Database(289): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-07 11:52:53.305: E/Database(289): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-07 11:52:53.305: E/Database(289): at android.os.Handler.dispatchMessage(Handler.java:99)
10-07 11:52:53.305: E/Database(289): at android.os.Looper.loop(Looper.java:123)
10-07 11:52:53.305: E/Database(289): at android.app.ActivityThread.main(ActivityThread.java:4627)
10-07 11:52:53.305: E/Database(289): at java.lang.reflect.Method.invokeNative(Native Method)
10-07 11:52:53.305: E/Database(289): at java.lang.reflect.Method.invoke(Method.java:521)
10-07 11:52:53.305: E/Database(289): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-07 11:52:53.305: E/Database(289): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-07 11:52:53.305: E/Database(289): at dalvik.system.NativeStart.main(Native Method)
10-07 11:52:53.305: E/livro(289): Erro abrindo banco: android.database.sqlite.SQLiteException: unable to open database file
10-07 11:52:53.324: W/dalvikvm(289): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
10-07 11:52:53.344: E/AndroidRuntime(289): FATAL EXCEPTION: main
10-07 11:52:53.344: E/AndroidRuntime(289): java.lang.RuntimeException: Unable to start activity ComponentInfo{livro.android.cap14/livro.android.cap14.CadastroCarros}: java.lang.NullPointerException
10-07 11:52:53.344: E/AndroidRuntime(289): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-07 11:52:53.344: E/AndroidRuntime(289): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-07 11:52:53.344: E/AndroidRuntime(289): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-07 11:52:53.344: E/AndroidRuntime(289): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-07 11:52:53.344: E/AndroidRuntime(289): at android.os.Handler.dispatchMessage(Handler.java:99)
10-07 11:52:53.344: E/AndroidRuntime(289): at android.os.Looper.loop(Looper.java:123)
10-07 11:52:53.344: E/AndroidRuntime(289): at android.app.ActivityThread.main(ActivityThread.java:4627)
10-07 11:52:53.344: E/AndroidRuntime(289): at java.lang.reflect.Method.invokeNative(Native Method)
10-07 11:52:53.344: E/AndroidRuntime(289): at java.lang.reflect.Method.invoke(Method.java:521)
10-07 11:52:53.344: E/AndroidRuntime(289): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-07 11:52:53.344: E/AndroidRuntime(289): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-07 11:52:53.344: E/AndroidRuntime(289): at dalvik.system.NativeStart.main(Native Method)
10-07 11:52:53.344: E/AndroidRuntime(289): Caused by: java.lang.NullPointerException
10-07 11:52:53.344: E/AndroidRuntime(289): at livro.android.cap14.RepositorioCarro.getCursor(RepositorioCarro.java:98)
10-07 11:52:53.344: E/AndroidRuntime(289): at livro.android.cap14.RepositorioCarro.listarCarros(RepositorioCarro.java:105)
10-07 11:52:53.344: E/AndroidRuntime(289): at livro.android.cap14.CadastroCarros.atualizarLista(CadastroCarros.java:31)
10-07 11:52:53.344: E/AndroidRuntime(289): at livro.android.cap14.CadastroCarros.onCreate(CadastroCarros.java:27)
10-07 11:52:53.344: E/AndroidRuntime(289): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-07 11:52:53.344: E/AndroidRuntime(289): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-07 11:52:53.344: E/AndroidRuntime(289): ... 11 more


Obrigado,
L.

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário