2017-05-26 96 views
-1

查询是:如何使用WHERE SQLite中从SQLite数据库显示特定日期

String query = "SELECT * FROM task WHERE date = "+date; 

日志是:

05-26 15:28:01.429 12647-12647/? D/TaskDB: querySELECT * FROM task WHERE date = 3-5-2017 

例如,我想访问3-5- 2017从这个image

+5

** ** 1 - 您的日期被定义为字符串,因此相应地对待他们**。 2 ** - 您的日期格式错误。日期的有效时间字符串有s格式:'YYYY-MM-DD' –

+1

在数据库中存储日期作为字符串使处理更容易。 –

回答

1

对于字符串数据类型,总是用这样“” +日期+““”行情。 由于日期是你的错误的字符串。 你应该使用+日期只有日期是不是字符串。 所以您的查询应该是:

String query = "SELECT * FROM task WHERE date = '" + date + "'"; 
1

您可以通过一个简单的查询获取日期格式任务表

private SQLiteDatabase database = null; 

private String getDate() 
{ 
String query="select date from task where id='2'"; 

    Cursor cursor = database.rawQuery(query, null); 

     if (cursor.moveToFirst()) { 
     do { 
       Log.d("Query Result ", cursor.getString(cursor.getColumnIndex("date"))); 
     } 
while (cursor.moveToNext()); 
} 
retrun cursor.getString(cursor.getColumnIndex("date")); 
}