2013-12-10 62 views
1

我需要存儲日期在我的應用程序的數據庫,我需要知道是否有可能在Android Sqlite創建具有日期類型列的表是這樣的:的Android源碼存儲日期類型

"CREATE TABLE example1 (ex_id INTEGER PRIMARY KEY, ex_date DATE)" 
+0

HTTP:// WWW。 sqlite.org/lang_datefunc.html –

回答

4

不,它不是。

但是,您可以使用Date.getTime()來獲取時間戳(在JAVA中爲long,在SQLite中爲INTEGER),以便能夠存儲和檢索日期。

從數據庫中獲取的日期,你會做什麼:

new Date(cursor.getLong(yourColumnIndex)); 

並存儲它:

contentValues.put("yourDateColumn", date.getTime()); 
+0

...或格式日期作爲字符串,或獲得浮點朱利安一天,或... –

+0

是的,但整數是存儲日期的最快和最低的方式。 – gahfy

+0

誰告訴你「最快」是一項要求?任何這些方法都有其自身的優點和缺點。 –

0

嘗試像這樣:

/* Creating Table */ 
String query = "CREATE TABLE " + TABLE_ORDER_DETAILS 
+ "(" 
+ OD_LOCAL_TIME + " TEXT," 
+ OD_SERVER_TIME + " TEXT " 
+ ")"; 

db.execSQL(query); 
+0

-1'TIMESTAMP'不是SQLite的任何公認類型! 'TIMESTAMP'將獲得'NUMERIC'親和力[SQLite3數據類型](http://www.sqlite.org/datatype3.html)! –

+0

我已更新我的答案 –

+0

您的回答沒有回答問題。您創建了「TEXT」列。 OP需要日期數據類型。而現在呢? –