Android:在Sqlite数据库中插入datetime

时间:2012-11-06 20:28:23

标签: android sqlite

我正在尝试在Andoird项目的Sqlite数据库中插入datetime字段。尝试了多种方式like this,但在插入日期时间字段方面没有运气。这是事实

1]我的Sqlite字段是类型时间戳

2]数据库类

package com.gcm.pushandroid;
import java.util.Date;

public class Notifications {

     //private variables 
      String _type; 
      String _time_stamp;


       // Empty constructor 
       public Notifications(){ 

       } 
       // constructor 
       public Notifications(String type, String timeStamp){ 
           this._type = type; 
           this._time_stamp = timeStamp;
       } 


      // getting ID 
      public String getType(){ 
          return this._type; 
       } 

      // setting id 
      public void setType(String type){ 
         this._type = type; 
      } 

     // getting timestamp
     public String getTimeStamp(){ 
        return this._time_stamp; 
     } 

     // setting 
     public void setTimeStamp(String time_stamp){ 
          this._time_stamp = time_stamp; 
     } 

}

3]这是代码

SQLiteDatabase db = this.getWritableDatabase(); 
ContentValues values = new ContentValues(); 
values.put(KEY_TYPE, notificationObj.getType());  
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
Date date = new Date();
values.put("time_stamp", dateFormat.format(date));
db.insert(TABLE_CONTACTS, null, values); 
db.close();

不知道出了什么问题。帮助很感激。 谢谢

1 个答案:

答案 0 :(得分:1)

您必须将sqlite字段类型更改为String / Text。 类型'timestamp'不允许:或 - Timestamp只能保存Integers

有关详细信息,请参阅http://www.sqlite.org/datatype3.html第1.2点