SQLite エントリをサーバーにアップロードする必要があるかどうかを判断するために、last_edited
との2 つのタイムスタンプを使用しています。last_uploaded
ただし、これらのタイムスタンプを更新するたびに datetime('now') を使用していても、タイムスタンプはlast_uploaded
ローカル時間 (UTC +2) として保存されます。
これがなぜなのか、どうすれば修正できるのかについてのアイデアはありますか?
私のSQLiteステートメントは次のとおりです。
private static final String UPDATE_EDITED_TIMESTAMP_BY_ID =
"UPDATE " + TABLE_ENTRIES + "\n"
+ "SET " + COLUMN_ENTRIES_LAST_EDITED + " = DATETIME('now')\n"
+ "WHERE " + COLUMN_ENTRIES_ID + " = :id;";
private static final String UPDATE_SYNC_INFO_BY_ID =
"UPDATE " + TABLE_WORK_ENTRIES + "\n"
+ "SET " + COLUMN_ENTRIES_LAST_SYNCED + " = DATETIME('now'), " + COLUMN_ENTRIES_SERVER_ID + " = :server_id\n"
+ "WHERE " + COLUMN_ENTRIES_ID + " = :db_id;";
それらを実行すると、次のようなコードを使用しています。
String sql = UPDATE_EDITED_TIMESTAMP_BY_ID.replace(":id", Integer.toString(id));
db.execSQL(sql);