2015-01-09 3 views
0

날짜 및 시간을이 형식 (YYYY-MM-DD HH : MM)으로 저장하는 sqlite 데이터베이스의 열이 있습니다. 이 칼럼을 다른 날짜와 시간 값과 비교하려고하면 앱이 다운됩니다. 나는 콜론이 (HH : MM)에 있기 때문에 그것을 추측한다. 비교를 어떻게해야합니까?텍스트로 저장되는 sqlite에서 날짜와 시간을 비교하는 방법은 무엇입니까?

쿼리

public Cursor fetchrDatetime(String dati) throws SQLException { 

     String query = "SELECT * FROM reminders WHERE reminder_date_time=" + dati; 
     Cursor cursor = mDb.rawQuery(query, null); 

     return cursor; 
    } 

로그 캣 : WHERE 값이 ' 사이

android.database.sqlite.SQLiteException: near "16": syntax error (code 1): , while compiling: SELECT * FROM reminders WHERE reminder_date_time=2015-01-09 16:14 
      at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method) 
      at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:882) 
      at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:493) 
      at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588) 
      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:1314) 
      at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1253) 
      at apps.rwx.doctorremainder.RemindersDbAdapter.fetchrDatetime(RemindersDbAdapter.java:248) 
      at apps.rwx.doctorremainder.ReminderEditActivity.saveState(ReminderEditActivity.java:306) 
      at apps.rwx.doctorremainder.ReminderEditActivity.access$300(ReminderEditActivity.java:40) 
      at apps.rwx.doctorremainder.ReminderEditActivity$5.onClick(ReminderEditActivity.java:203) 
      at android.view.View.performClick(View.java:4091) 
      at android.view.View$PerformClick.run(View.java:17072) 
      at android.os.Handler.handleCallback(Handler.java:615) 
      at android.os.Handler.dispatchMessage(Handler.java:92) 
      at android.os.Looper.loop(Looper.java:153) 
      at android.app.ActivityThread.main(ActivityThread.java:4987) 
      at java.lang.reflect.Method.invokeNative(Native Method) 
      at java.lang.reflect.Method.invoke(Method.java:511) 
      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:821) 
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584) 
      at dalvik.system.NativeStart.main(Native Method) 

답변

0

이어야한다. 나중에 일

String query = "SELECT * FROM reminders WHERE reminder_date_time='" + dati + "'"; 
+0

은 .... 그것이 올바른 :-) 물론 – Diwa

+0

... 감사 ...하지만 3 분 답변으로 이용 약관을 읽고 동의를 왼쪽으로 .. –

+0

경우 @Diwa이 응답을 받아주십시오 – Diwa

관련 문제