마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

SQL 오류 logcat좀 봐주세요..

0 추천

07-16 11:59:39.354: E/SQLiteLog(17141): (1) no such column: _id
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141): Exception in excuteQuery
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141): android.database.sqlite.SQLiteException: no such column: _id (code 1): , while compiling: select _id, CONTENT_TEXT
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:892)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:503)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:726)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1415)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1354)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at com.example.if_i_get_thereDb.Database.rawQuery(Database.java:43)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at com.example.if_i_get_there.MainActivity.loadDiaryListData(MainActivity.java:110)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at com.example.if_i_get_there.MainActivity.onStart(MainActivity.java:90)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1171)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.app.Activity.performStart(Activity.java:5285)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2252)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.app.ActivityThread.access$800(ActivityThread.java:139)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1200)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.os.Handler.dispatchMessage(Handler.java:102)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.os.Looper.loop(Looper.java:136)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at android.app.ActivityThread.main(ActivityThread.java:5103)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at java.lang.reflect.Method.invokeNative(Native Method)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at java.lang.reflect.Method.invoke(Method.java:515)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:606)
07-16 11:59:39.354: E/if_i_get_thereDatabase(17141):  at dalvik.system.NativeStart.main(Native Method)
07-16 11:59:39.354: D/AndroidRuntime(17141): Shutting down VM
07-16 11:59:39.354: W/dalvikvm(17141): threadid=1: thread exiting with uncaught exception (group=0x41d11e48)
07-16 11:59:39.354: W/FileUtils(17141): Failed to chmod(/storage/emulated/0/if_i_get_there/if_i_get_there.db): libcore.io.ErrnoException: chmod failed: EPERM (Operation not permitted)
07-16 11:59:39.354: E/AndroidRuntime(17141): FATAL EXCEPTION: main
07-16 11:59:39.354: E/AndroidRuntime(17141): Process: com.example.if_i_get_there, PID: 17141
07-16 11:59:39.354: E/AndroidRuntime(17141): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.if_i_get_there/com.example.if_i_get_there.MainActivity}: java.lang.NullPointerException
07-16 11:59:39.354: E/AndroidRuntime(17141):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2202)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2252)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at android.app.ActivityThread.access$800(ActivityThread.java:139)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1200)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at android.os.Handler.dispatchMessage(Handler.java:102)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at android.os.Looper.loop(Looper.java:136)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at android.app.ActivityThread.main(ActivityThread.java:5103)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at java.lang.reflect.Method.invokeNative(Native Method)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at java.lang.reflect.Method.invoke(Method.java:515)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at com.example.if_i_get_there.MainActivity.loadDiaryListData(MainActivity.java:111)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at com.example.if_i_get_there.MainActivity.onStart(MainActivity.java:90)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1171)
07-16 11:59:39.354: E/AndroidRuntime(17141):  at

 

public void onCreate(SQLiteDatabase db) {
   println("creating database ["+Define.DATABASE_NAME+"].");
   println("creating table["+TABLE_IITG+"].");
   
   String DROP_SQL= "drop table if exists " +TABLE_IITG;  //TABLE_DIARY
   
   try {
    db.execSQL(DROP_SQL);
    
   }catch (Exception e){
    Log.e(TAG,"Exception in DROP_SQL");
    }
   String CREATE_SQL = "CREATE TABLE "
     + TABLE_IITG
     +"(_id integer PRIMARY KEY AUTOINCREMENT, CONTENT_TEXT TEXT) ";
     
   try{
    db.execSQL(CREATE_SQL);
   }catch(Exception e){
    Log.e(TAG,"Exception in CREATE_SQL");
   }
   
  }

 public boolean execSQL(String SQL) {
  println("\nexecute called.\n");
  
  try {
   Log.d(TAG, "SQL : " + SQL);
   db.execSQL(SQL);
  } catch (Exception ex) {
   Log.e(TAG, "Exception in executeQuery", ex);
   return false;
  }
  return true;
 }

도대체 무엇이 문제인거죠???  sql문법에 오류가있나요

이따구로만들어 (480 포인트) 님이 2014년 7월 16일 질문

1개의 답변

0 추천

에러가 두 개나 나고 있어요.

다음부터는 에러로그를 답변해줄 사람들이 보기 쉽게 올려주세요

 

android.database.sqlite.SQLiteException: no such column: _id (code 1): , while compiling: select _id, CONTENT_TEXT
 at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
 at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:892)
 at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:503)
 at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:726)
 at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
 at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37)
 at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44)
 at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1415)
 at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1354)
 at com.example.if_i_get_thereDb.Database.rawQuery(Database.java:43)
 at com.example.if_i_get_there.MainActivity.loadDiaryListData(MainActivity.java:110)
 at com.example.if_i_get_there.MainActivity.onStart(MainActivity.java:90)
 at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1171)
 at android.app.Activity.performStart(Activity.java:5285)
 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
 at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2252)
 at android.app.ActivityThread.access$800(ActivityThread.java:139)
 at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1200)
 at android.os.Handler.dispatchMessage(Handler.java:102)
 at android.os.Looper.loop(Looper.java:136)
 at android.app.ActivityThread.main(ActivityThread.java:5103)
 at java.lang.reflect.Method.invokeNative(Native Method)
 at java.lang.reflect.Method.invoke(Method.java:515)
 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:606)
 at dalvik.system.NativeStart.main(Native Method)

두 번째 줄에 나와있들이 

no such column: _id (code 1): , while compiling: select _id, CONTENT_TEXT

_id라는 컬럼을 찾을 수 없다는 뜻입니다.

 

 

 

또 하나의 에러는 이거입니다.

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.if_i_get_there/com.example.if_i_get_there.MainActivity}: java.lang.NullPointerException
 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2202)
 at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2252)
 at android.app.ActivityThread.access$800(ActivityThread.java:139)
 at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1200)
 at android.os.Handler.dispatchMessage(Handler.java:102)
 at android.os.Looper.loop(Looper.java:136)
 at android.app.ActivityThread.main(ActivityThread.java:5103)
 at java.lang.reflect.Method.invokeNative(Native Method)
 at java.lang.reflect.Method.invoke(Method.java:515)
 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:606)
 at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
 at com.example.if_i_get_there.MainActivity.loadDiaryListData(MainActivity.java:111)
 at com.example.if_i_get_there.MainActivity.onStart(MainActivity.java:90)
 at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1171)
 at android.app.Activity.performStart(Activity.java:5285)
 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)

밑에서 5~6번째 줄에 나와있들이

Caused by: java.lang.NullPointerException
 at com.example.if_i_get_there.MainActivity.loadDiaryListData(MainActivity.java:111)

MainAcitivity의 111번째 줄에서 null인 변수를 사용하고 있다는 뜻이죠.

 

 

쎄미 (162,410 포인트) 님이 2014년 7월 16일 답변
...