我想从数据库中获取数据,然后与系统时间

我想从数据库中获取数据,然后与系统时间

问题描述:

我想从数据库中获取数据,然后与系统time.my Android的代码比较采取系统时间比较的我想从数据库中获取数据,然后与系统时间

sTimeFirstPart= DateFormat.getTimeInstance(DateFormat.SHORT).format(new Date()); 

这将保持当前的系统时间怎么能在我的数据库表这时候比较时间我的数据库表是这个样子

public void onCreate(SQLiteDatabase db) { 
    db.execSQL("CREATE TABLE IF NOT EXISTS names3 (_ID INTEGER PRIMARY KEY  AUTOINCREMENT, medicine VARCHAR, dose1 VARCHAR ,dose2 VARCHAR ,dose3 VARCHAR)"); 

dose1,dose2,剂量3是存储在数据库中的时间价值。

我想在什么时间显示下一个药物我该怎么做,请帮助我?

您应该考虑将日期存储为Millis以来的时间 - 什么System.currentTimeMillis()返回。

然后在表格中添加一列“theTime”,并在那里存储下一个摄入日期。

这里比较使用<和>很容易:

SELECT dose FROM names3 WHERE theTime < ? 

,并通过将当前时间作为参数。

我不是一个Android开发人员,但比较日期作为字符串是任何平台上的一个坏主意。为什么不使用Date而不是String? 您可以将Varchar转换为this之类的日期,然后使用compareTo将其与当前时间进行比较。

本实施例解决了这个问题:

Look here用于SQLite的其他日期的功能。

+0

您不必将时间列添加为长的类型,就像在接受的答案中一样。 – pawelzieba 2011-02-14 13:01:34