1

例如:如果我正在訪問SMS數據庫,則會在消息時間戳記的「日期」字段中顯示。但是,假設我將帶有較舊時間戳的郵件加載到數據庫中,我怎麼知道它們是在之後的後面添加了時間戳郵件?是否有可以訪問的表格行的修改或創建的日期?Android內容提供商修改/創建日期

編輯和澄清:

的SMS表有以下欄目:長_id,thread_id單,地址,人員,日期,協議,閱讀,狀態,類型,reply_path_present,主題,正文,service_center,鎖定,ERROR_CODE ,看到&。

'date'是指郵件發送的日期,而不是當它被添加到數據庫時。在數據庫中添加或修改數據時,Android數據庫(SQLite)會跟蹤嗎?如果是這樣,我該如何訪問它?如果沒有,只需在不記錄的情況下添加/刪除/更新數據,那也是一個答案。

+0

代碼?錯誤/ logcat的?你做了什麼?你從研究中得出什麼結論?你是怎麼做到的?你爲什麼以這種方式接近它?等等。我們怎麼知道你在說什麼?您是否可以重新編輯您的問題以儘可能包含完整信息? :) – t0mm13b 2012-07-07 19:53:51

回答

1

當插入或更新行時,sqlite中沒有日期。

+0

謝謝!這是一種恥辱,但很高興知道! – 2012-08-03 07:05:06

3

,你可以通過創建一個包含當前日期和時間列解決這個問題(目前的手段目前,該行已插入):

create table mytable(_id int primary key, date datetime default current_timestamp); 

這將導致一個時間戳的每一行該點要插入

的時刻另一個解決方案是簡單地插入當前時間戳出像SQLiteOpenHelper的:

ContentValues values = new ContentValues(2); 
values.put(COLUMN_NAME_ID, id); 
values.put(COLUMN_NAME_TITLE, title); 
values.put(COLUMN_NAME_CREATED_DATE, System.currentTimeMillis()); 

dbHelper.getWritableDatabase().insert(TABLE_NAME, null, values);