Android アプリ開発で、SQLite を使って日時を扱う時のポイント
- SQLite には日時を扱う型が無い。
- Android アプリでは 1970年1月1日 00:00:00.0 UTC からのミリ秒(Unix タイムのミリ秒)で日時を扱うことにする。
- UNIX タイムのミリ秒を INTEGER 型で挿入することにより SQLite で日時を扱う。(たとえばの方法。他にも考えられる。)
- Java で現在日時取得には、System.currentTimeMillis() を使用する。
- Java の Date クラス、SimpleDateFormat クラスなどで日時を扱う。
- 開発時にミリ秒の日時を得るのに便利なページ(「unix time」で検索して見つけた)
→ UNIXTIME相互変換ツール – konisimple
これがベストプラクティスかどうかはわかりません!今のところこれでアプリ制作が実現できている、という状態です。
大量のデータの挿入や検索時に問題が発生するかもしれません!けれども、ある程度綺麗に日時を扱えている感覚がございますのでメモしておきますわ♪