ぼくの最高速度(´⊙ω⊙`) @kahonyun

美味しいものと家族を愛すエンジニャー。最近ママになりました。何でも書きます。

SQLiteでローカルタイムゾーンな時刻設定(Titanium)

今作成しているアプリでローカルの現在時刻を取りたかったので、覚え書き。

 

前のコードではCURRENT_TIMESTAMPで時間取ってた。

↓こんな感じ

db.execute('create table if not exists date_test1(id INTEGER,in_time DATETIME CURRENT_TIMESTAMP,out_time DATETIME CURRENT_TIMESTAMP,sleep_time INTEGER)');

SQLiteでCURRENT_TIMESTAMPを使うと、UTC(協定世界時)から変更もできないらしい。

 

なのーで!タイムスタンプの代わりに

 datetime('now', 'localtime')

こいつを使っていい感じにします!

でもこいつをCURRENT_TIMESTAMPの代わりに書くと、

update文では大丈夫だけどcreate文ではsyantax errorでちゃったんだおー

 

create文ではCURRENT_TIMEにしいて他はdatetimeにすれば皆幸せになれそう。

 

参考:

http://nplll.com/archives/2009/06/sqlitecurrent_timestamputc.php