2013-02-09 85 views
0

我正在使用editText輸入類型是日期,我希望該用戶將日期格式輸入日期,並將其存儲在sqlite表中的日期時間字段。這可能嗎?由於editText日期格式爲dd/mm/yyyy,在sqlite中爲yyyy/mm/dd。如何保存日期時間字段值在sqlite表中的日期時間字段

我設計了一個表單,其中有一個用戶將輸入日期的編輯文本,我想將這個日期存儲在其字段類型爲datetime的sqlite中。怎麼做?我是android新手,如果有人知道解決方案,請給我答案。

+0

http://stackoverflow.com/questions/8194282/converting-android-date-time-into-mysql-datetime?rq=1 – Sean 2013-02-09 11:32:25

+0

將datetime保存爲varchar – Senthil 2013-02-09 11:45:05

回答

1

我已經解決了我的問題:最新的

  1. 我已經採取了數據類型是sqlite3的日期時間。
  2. 我已經使用textview,datepicker和date_picker_demo.xml中保存在佈局中的按鈕。

  3. DatePicker.java

    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
         db = new DatabaseHelper(this); 
         date_textview = (TextView) findViewById(R.id.tv_date); 
         picker_date = (DatePicker) findViewById(R.id.datepicker1); 
         button_create = (Button) findViewById(R.id.button_create); 
    } 
    
    @Override 
    public void onClick(View arg0) { 
        date = new Date(picker_date.getYear()-1900, picker_date.getMonth(), picker_date.getDayOfMonth()); 
         sdf = new SimpleDateFormat("yyyy-MM-dd"); 
    
         //sdf.format()->converting date to string 
    String sdate = sdf.format(date); 
    
         //inserting date into database 
         try { 
        db.createDataBase(); 
    } catch (IOException e) { 
        e.printStackTrace(); 
    } 
    db.openDataBase(); 
    Cursor cur = db.select(); 
    
    for(cur.moveToFirst(); !cur.isAfterLast(); cur.moveToNext()){ 
        if(cur.isLast()){ 
         s_id = Integer.parseInt(cur.getString(0)); 
         s_id = s_id + 1; 
        } 
    } 
         db.insertDate(s_id,sdate); 
        } 
    
  4. DatabaseHelper.java

    public Cursor select(){ 
    String qry = "Select subscription_id from Subscription_Master"; 
    cur = sqdb.rawQuery(qry,null); 
    return cur; 
    } 
    
    public void insertDate(int s_id,String s_date){ 
    
    String query = "insert into Subscription_TAB(subscription_id,start_date) values("+s_id+",date('"+s_date+"'))"; 
    sqdb.execSQL(query); 
    Log.d("value","inserted"); 
    } 
    

日期插入數據庫成功。

相關問題