2013-03-13 3 views
0

Я использую SQLLite Database, поставляемую Android.Множественная вставка android sqlite для столбцов

У меня есть таблица myTable с двумя coloumns: col_id и colName. Класс gettersetter выглядит следующим образом:

public class MyTable{ 

     private long id; 
    private String colName; 

    public long getId() { 
     return id; 
    } 

    public void setId(long id) { 
     this.id = id; 
    } 

    public String getColName() { 
     return colName; 
    } 

    public void setColName(String colName) { 
     this.colName = colName; 
    } 

} 

У меня есть метод в разъем базы данных, который вставляет одну строку:

public void insertMyTable(String colName) 
      { 
       ContentValues newCon = new ContentValues(); 
       newCon.put("colName", colName); 
       open(); 
       database.insert("myTable", null, newCon); 
       close(); 
      } 

Есть ли способ, чтобы вставить список объектов типа MyTable в базы данных, у меня есть более 100 записей, которые нужно вставить сразу.

Заранее спасибо

ответ

4
public void insertMyTable(List<MyTable> myTables) 
{ 
    open(); 
    database.beginTransaction(); 
    for (MyTable myTable : myTables) 
    { 
     ContentValues insertValues = new ContentValues(); 
     insertValues.put("colName", myTable.getColName()); 
     database.insert("myTable", null, insertValues); 
    } 
    database.setTransactionSuccessful(); 
    database.endTransaction(); 
    close(); 
} 
+0

Спасибо Nguyen за ответ. Однако я хотел использовать класс gettersetter для вставки значения. В любом случае, чтобы ввести одно или несколько значений? – amitsalyan

Смежные вопросы