删除超过特定天数的sqlite数据库中的数据

时间:2013-10-10 12:48:49

标签: android

我确实在互联网上搜索相关信息并实施。但不知何故,它在我的实现中不起作用。我想删除超过特定天数的数据。 保存数据时,日期格式保存如下。

SimpleDateFormat df = new SimpleDateFormat("EEE,d MMM yyyy,HH:mm:ss");
Date today = (Date) Calendar.getInstance().getTime(); 
String receiveDate = df.format(today);

我想删除超过天数的数据,并按以下方式执行

    public boolean delete_oldData(int numofdays){
            String deleteQuery = "DELETE FROM " + SQLITE_TABLE + " WHERE " + KEY_TIMEINSTANCE +  " <= date('now','-" + numofdays + " day')";
            Log.d("Delete Query: ", deleteQuery);            
            myDb.execSQL(deleteQuery);         
            return true;
     }

但它不会删除任何数据。可能有什么不对?

1 个答案:

答案 0 :(得分:0)

请尝试以下代码:

Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_MONTH, -numofdays);
String str = df.format(cal.getTime());

将“&lt; = date('now',' - ”+ numofdays +“day')”改为“&lt; ='”+ str +“'”。

希望这有帮助。