0

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);
4

0 に答える 0