2011-02-01 55 views
7

我有以下字段插入時間戳的SQLite的Android

 
1> WorkName - Varchar 

2> TimeStap 

我想創建一個表與上述領域。

  1. 會有什麼timestamp數據類型

  2. 我如何可以插入時間戳值表。

  3. 插入數據時的時間戳值或如何獲取時間戳會有什麼影響。

我已經在SQLite的工作,但沒有對加時間戳字段的表&增加值的任何經驗。

什麼樣的CREATE & INSERT我應該使用哪些語句?

+0

這個話題也有興趣。 =) – prolink007 2011-02-01 19:28:14

回答

6

Sqlite數據庫中可用的數據類型有限,所以我認爲對於日期有用的數據類型是整數 - 它將接受長整型值(動態調整其大小),以便日期存儲日期的毫秒值,並且日期可以在從數據庫中讀取毫秒值時很容易重建。

+0

這是我正在使用的方法,我只是使用時代計時器,只是存儲該整數日期,然後在需要時重建實際時間。我只是想知道是否有更好的方法。謝謝 – prolink007 2011-02-01 19:40:23

0

您可以使用Java.sql.Timestamp class作爲SQL數據庫中表的列數據類型。

由於SQLiteDatabase類不支持一個put()方法Timestamp變量,使用getTime()方法在類中插入的該時間相應毫秒作爲long值。(SQLiteDatabase確實有long類型put()方法)
Open this爲方法參考。

0

我這個創建時間戳:

/** 
* 
* @return yyyy-MM-dd HH:mm:ss formate date as string 
*/ 
public static String getCurrentTimeStamp(){ 
    try { 

     SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
     String currentTimeStamp = dateFormat.format(new Date()); // Find todays date 

     return currentTimeStamp; 
    } catch (Exception e) { 
     e.printStackTrace(); 

     return null; 
    } 
}