使用日期从sqlitedatabase读取数据

时间:2014-03-18 16:44:03

标签: android

您好,    我在数据库中插入日期,

long curr_date = System.currentTimeMillis();

当我查看我的数据库时,日期显示为2014-03-18。如果日期少于2天。我想提取所有名称数据并将其存储在字符串中。 我怎样才能做到这一点?下面的方法从数据库中提取所有数据,但不会提取它只查询日期。提前谢谢。

public static final String KEY_DATE = "current_date";

String[] columns = new String[]{KEY_ROWID, KEY_NAME, KEY_DATE};

String result =" ";

Cursor c = ourDatabase.query(DATABASE_TABLE, columns, null, null, null, null, null);



 int iRow = c.getColumnIndex(KEY_ROWID);
            int iName = c.getColumnIndex(KEY_NAME);


for(c.moveToFirst();!c.isAfterLast(); c.moveToNext()){


                result = result + c.getString(iName) + ",";    

            }
            return result;

1 个答案:

答案 0 :(得分:1)

查看SQLite datetime functions并查看部分修饰符。它有你需要的东西。基本上,您需要执行以下操作:

currentDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US)
        .format(calendar.getInstance().getTime());

Cursor c = ourDatabase.query(DATABASE_TABLE, 
        columns, 
        "date(" + KEY_DATE + ",\"+2 days\")=?", 
        new String[] { currentDate }, 
        null, 
        null, 
        null);

(免责声明:我还没有对此进行过测试,可能会出现杂散的语法错误......但这绝对足以让你指出正确的方向。)