Я разрабатываю приложение для Android, где я ищу записи, созданные после указанной даты. Мой код некоторые вещи, как этотSQLite date query возвращает запись
public List<NPRMember> IncrementalData(String LastDtTime) {
List<NPRMember> results = new ArrayList<NPRMember>();
SQLiteDatabase db=getMyReadableDatabase();
String lastdt="datetime("+LastDtTime+")";
Cursor cursor = null;
try{
cursor = db.query(TABLE_NAME_NPR, new String[] { KEY_FULLNAME, KEY_FATHERNAME,
KEY_RCRD_SOURCE,KEY_RCRD_CRN_DATE},KEY_RCRD_CRN_DATE + ">? AND "+KEY_RCRD_SOURCE+">?",
new String[]{lastdt, "0"}, null, null, null);
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
NPRMember nprmem = cursorToMemberDetails(cursor);
results.add(nprmem);
cursor.moveToNext();
}
}catch(Exception e){
Log.e(APP_NAME, "An error occurred while searching for "+LastDtTime+": "+e.toString(), e);
}finally{
if(cursor!=null && !cursor.isClosed()){
cursor.close();
}
}
return results;
}
Запрос не возвращает никакого значения, хотя у меня есть по крайней мере одна запись с KEY_RCRD_CRN_DATE 2013-07-25 18:59:19 LastDtTime прошел как параметр имеет значение 2013-07-25 14:46:03. Интересно, что если я запустил запрос в командной строке SQLite, он вернет дезактивированную запись.
SELECT fullname, fathername, .... rcrdsource, rcrdcrtndate FROM nprmembers WHERE rcrdcrtndate>'2013-07-25
14:46:03' AND rcrdsource>0;
Любая помощь будет принята с благодарностью. Спасибо
Пожалуйста, включите соответствующую часть вашей схемы и данные в этой таблице. И, пожалуйста, уберите все, что вам не нужно, чтобы воспроизвести вашу проблему. –
Что произойдет, если вы опустите дату, где статья в приложении для Android? –
@Frank, без даты я получаю желаемую запись. – Dibs