2014-04-09 67 views
0

我創建了一個表,我的應用程序...第一次用戶將給輸入兩個EDITTEXT,姓名和手機號碼,當表之後只更新第一行空表......等等連連創建一個SQLite錶行更新行

+0

我無法理解你的要求。您是否想要保存和更新ONE用戶的姓名和手機號碼,或者每次只需創建一個名稱和手機號碼的新用戶? – AndyH

回答

1

一個場景:

  1. 添加一個新的紀錄,名稱: 「名稱1」,電話: 「123456789」 - >新紀錄
  2. 添加新記錄名稱:「name2」,電話:「987654321」 - >更新以前輸入的記錄。

如果你想要什麼,然後:

  1. 一定要始終與同id如先前插入一個插入新記錄。
  2. 使用db.insertWithOnConflict()[ link ]將新記錄,使數值CONFLICT_REPLACE[ link ]最後一個參數conflictAlgorithm

示例代碼

void Add_Contact(Person_Contact contact) 
{ 
    db = this.getWritableDatabase(); 
    ContentValues values = new ContentValues(); 
    // SINGLE_ROW_ID is a constant holding the single row id that will be used. e.g: SINGLE_ROW_ID = 1 
    values.put(KEY_ID, SINGLE_ROW_ID); 
    values.put(KEY_NAME, contact.get_name()); // Contact Name 
    values.put(KEY_PH_NO, contact.get_phone_number()); // Contact Phone 
    // Inserting Row 
    db.insert(TABLE_CONTACTS, null, values); 
    db.insertWithOnConflict(TABLE_CONTACTS,KEY_ID,values, SQLiteDatabase.CONFLICT_REPLACE); 
    db.close(); // Closing database connection 
} 
+0

喜附上我的代碼讓我明確公共無效Add_Contact(Person_Contact接觸){分貝= this.getWritableDatabase(); \t ContentValues values = new ContentValues(); \t values.put(KEY_NAME,contact.get_name()); //聯繫人姓名 \t values.put(KEY_PH_NO,contact.get_phone_number()); //聯繫電話 \t //插入行 // \t db.insert(TABLE_CONTACTS,NULL,值); \t db.insertWithOnConflict(TABLE_CONTACTS,KEY_ID,值,1); \t db.close(); //關閉數據庫連接 } – user3415586

+0

我編輯了我的答案。檢查,並讓我知道如果你需要更多的澄清:) – kdehairy

+0

謝謝......你這麼多...我是新到Android,我將繼續要求無疑幫我 – user3415586