SQLite3でタイムゾーンをUTCに変更しつつミリ秒をInsertする
strftime(format, timestring, modifier, modifier, ...)を使用する。
環境
- SQLite: 3.28.0
対策
- formatに'%Y-%m-%d %H:%M:%f'を指定する。(%fがSS.SSS)
- modifierに'utc'を指定する。
例(Ruby)
require 'sqlite3' SQLite3::Database.new("something.db") {|db| sql = "INSERT INTO events (at) VALUES (strftime('%Y-%m-%d %H:%M:%f', :at, 'utc'));" db.execute(sql, at: Time.now.strftime("%Y-%m-%d %H:%M:%S.%3N")) }