2017-02-28 128 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); 

让我知道如果你需要任何其他帮助。