Java 在一定时间后删除SQLite中的一行

Java 在一定时间后删除SQLite中的一行,java,android,mysql,database,sqlite,Java,Android,Mysql,Database,Sqlite,我有一张一排的桌子。我想在一小时后删除此行。在这一行中,我将指定格式的时间戳存储为“COULMN_DATE”。我从这里得到了一个应该有效的查询: 我在databaseHandler类中的onCreate()函数中这样调用它,并且我确保事先也更新了数据库版本。出于检查目的,我将小时改为分钟: db.execSQL("DELETE FROM " + TABLE_PRODUCTS +" WHERE "+ COLUMN_DATE +" < DATETIME('NO

我有一张一排的桌子。我想在一小时后删除此行。在这一行中,我将指定格式的时间戳存储为“COULMN_DATE”。我从这里得到了一个应该有效的查询:

我在databaseHandler类中的
onCreate()
函数中这样调用它,并且我确保事先也更新了数据库版本。出于检查目的,我将小时改为分钟:

 db.execSQL("DELETE FROM " + TABLE_PRODUCTS +" 
              WHERE "+ COLUMN_DATE +" < DATETIME('NOW', '-1 minutes');");
db.execSQL(“从”+表中删除产品+”
其中“+COLUMN_DATE+”

但是在插入时间戳,等待几分钟,然后重新启动应用程序检查数据是否被删除后,它仍然存在。是因为我打错电话了吗?如果是,该在何处执行此查询?

onCreate
仅在数据库尚不存在时调用。在你的应用程序中什么时候应该删除该行?@CL.哦,我明白了。在启动阶段。或者当一个小时过去的时候。我不知道这通常是如何在后台完成的?只要一个小时过去了,当用户再次打开程序时,它就消失了。为什么要在后台做任何事情?如果行还没有被删除,谁会在意呢?在应用程序再次打开之前,它实际上不会显示出来?@CL。我想是的。我只是不太确定这通常是怎么做的,所以我只是想尝试一下。