Android - 内容写入现有行的值

5 java database sqlite android

我正在尝试使用插入值ContentValues,我已经将5个值插入到5列中.在运行应用程序之后,我只使用了最后一组值的行ContentValues.未插入前四组.

      ContentValues cv = new ContentValues();
       cv.put("name", "Cs Tech");
       cv.put("name", "Wipro");
       cv.put("name", "TCS");
       cv.put("name", "Infosys");
       cv.put("name", "Cognizant");

       cv.put("mail", "joe@info.com");
       cv.put("mail", "bru@wipro.com");
       cv.put("mail", "jen@tcs.com");
       cv.put("mail", "ram@infosys.com");
       cv.put("mail", "cts@cts.com");

       cv.put("contact", "180 151 2010");
       cv.put("contact", "180 151 2011");
       cv.put("contact", "180 151 2012");
       cv.put("contact", "180 151 2013");
       cv.put("contact", "180 151 2014");

       cv.put("date", "27 Jul 2011");   
       cv.put("date", "27 Jul 2011");
       cv.put("date", "27 Jul 2011");
       cv.put("date", "27 Jul 2011");
       cv.put("date", "27 Jul 2011");

       this.db.insert(TABLE_NAME, "name", cv);
Run Code Online (Sandbox Code Playgroud)

She*_*tib 8

不难理解,这ContentValues是一种暗示这种代码的散列表

    cv.put("name", "Cs Tech");
    cv.put("name", "Wipro");
    cv.put("name", "TCS");
    cv.put("name", "Infosys");
    cv.put("name", "Cognizant"); 
Run Code Online (Sandbox Code Playgroud)

最终用key ="name"覆盖了4次值,名字终于得到了最后一个值!

为此,您应该按顺序执行此操作:

ContentValues cv = new ContentValues();
       cv.put("name", "Cs Tech");
       cv.put("mail", "joe@info.com");         
       cv.put("contact", "180 151 2010");
       cv.put("date", "27 Jul 2011");

       this.db.insert(TABLE_NAME, "name", cv);

       cv.put("name", "Wipro");
       cv.put("mail", "bru@wipro.com");
       cv.put("contact", "180 151 2011");
       cv.put("date", "27 Jul 2011");

       this.db.insert(TABLE_NAME, "name", cv);

       cv.put("name", "TCS");
       cv.put("mail", "jen@tcs.com");  
       cv.put("contact", "180 151 2012");
       cv.put("date", "27 Jul 2011");

       this.db.insert(TABLE_NAME, "name", cv);

       cv.put("name", "Infosys");
       cv.put("mail", "ram@infosys.com");
       cv.put("contact", "180 151 2013");
       cv.put("date", "27 Jul 2011");

       this.db.insert(TABLE_NAME, "name", cv);

       cv.put("name", "Cognizant");
       cv.put("mail", "cts@cts.com");
       cv.put("contact", "180 151 2014");
       cv.put("date", "27 Jul 2011");

       this.db.insert(TABLE_NAME, "name", cv);
Run Code Online (Sandbox Code Playgroud)