2017-02-28 126 views
-1

我做編碼的數據庫如何更新SQLite數據庫

public int updateContact(ModelContact modelContact) { 

    SQLiteDatabase db = dbHelper.getWritableDatabase(); 

    ContentValues values = new ContentValues(); 
    values.put(dbHelper.KEY_NAME, modelContact.getName()); 
    values.put(dbHelper.KEY_CONTACT, modelContact.getPhoneNumber()); 
    values.put(dbHelper.KEY_TYPE, modelContact.getType()); 


    return db.update(dbHelper.TABLE_CONTACTS, values, dbHelper.KEY_ID + " = ?", 
      new String[] { String.valueOf(modelContact.getID()) }); 
} 

現在我在做活動的onClick更新按鈕的哪些代碼。

+0

實際上需要什麼。你想更新數據庫還是想更新表格數據? – Avi

回答

0

  • 如果增加DATABASE_VERSION的數量。這將是更新的
    。 DATABASE_VERSION = 2

public class SqliteHelper extends SQLiteOpenHelper { 
     static final String DATABASE = "databasename"; 
     static final int DATABASE_VERSION = 1; 
      public SqliteHelper(Context context) { 
        super(context, DATABASE, null, DATABASE_VERSION); 
       } 
    } 
-1

請檢查從另一個堆此鏈接; Android: upgrading DB version and adding new table

基本上你應該通過給static int指定一個更大的數字來更新你的數據庫版本。

private static final int DATABASE_VERSION = 4; 

然後將它包含在您的構造函數中。

MyOpenHelper(Context context) { 

super(context, "DatabaseName", null, DATABASE_VERSION); 
} 
+0

我可否知道爲什麼我的帖子被downvoted? –

0

此代碼,你可以在點擊方法您的活動類的更新按鈕寫,這會爲你工作,

EditText nameEditText = (EditText) findViewById(R.id.name); 
EditText phoneNumberEditText = (EditText) findViewById(R.id.phoneNumber); 
EditText nameType = (EditText) findViewById(R.id.type); 

ModelContact modelContact = new ModelContact(); 
modelContact.setName(nameEditText.getText().toString()); 
modelContact.setPhoneNumber(phoneNumberEditText .getText().toString()); 
modelContact.setType(nameType .getText().toString()); 

updateContact(modelContact); 

讓我知道如果你需要任何其他幫助。