我从parse获取了一行的objectId。我在sqlite数据库中保存了相同的objectId,用于将其发送到解析的相应对象。
String objectId = archiveNotes.getObjectId();
然后,我正在查看数据库中是否存在具有相同objectId的行:
tasks_Database_Operations tasksDatabaseOperations = new tasks_Database_Operations(getApplicationContext());
SQLiteDatabase database = tasksDatabaseOperations.getReadableDatabase();
Log.d("HirakDebug", "Got readable database");
String tablename = tasks_Database_Operations.ASSIS_NOTES_TABLE_NAME;
String where = tasks_Database_Operations.ASSIS_NOTES_PARSE_OBJECT_ID + "=?";
String[] whereArgs = new String[]{objectId};
Cursor cursor = database.query(tablename, null, where, whereArgs, null, null, null);
if (cursor.moveToFirst()){
Log.d("HirakDebug", "SQHelper PArse sync data exist");
} else {
Log.d("HirakDebug", "SQHelper PArse sync data doesnt exist");
tasksDatabaseOperations.putFromParse(objectId, archived, color, date, locked, note, title);
Log.d("HirakDebug", "Got from parse " + objectId + " " + archived + " " +
color + " " + date + " " + locked + " " + note + " " + title);
}
但是,我没有在logcat中看到if ... else statemenet中的任何一个Logs。这意味着它们都没有被执行。我都没有收到任何错误。
任何人都可以找到我在做错的地方吗?
答案 0 :(得分:0)
首先,请你写下你想要执行的SQL句子吗?
其次,你真的想在列的第二个参数上传递NULL吗?
第三,你有没有尝试用db.rawQuery替换database.query,看看会发生什么?,如果有的话请告诉我。
由于