Как добавить более одного столбца с помощью метода вставки SQLiteDatabase?

Я новичок в разработке для Android, и у меня есть вопрос о методе вставки класса SQLiteDatabase.

Например, если я хочу вставить одну строку, содержащую только один столбец, я бы сделал следующее:

SQLiteDatabase db = openHelper.getWritableDatabase();
ContentValues cv = new ContentValues();
cv.put("first_name", "my name");

db.insert("MyTable", null, cv);

Проблема в том, что я не знаю, как использовать этот метод вставки для двух или более столбцов, например, если я хочу добавить имя и фамилию. Я знаю, как это сделать с помощью классического синтаксиса SQL.


person Amer A.    schedule 08.02.2012    source источник


Ответы (1)


Использовать

ContentValues initialValues = new ContentValues(); 
initialValues.put("colname1", "value1");
initialValues.put("colname2", "value2");
...
long rowId = mDb.insert(DATABASE_TABLE, null, initialValues);

Вы можете поместить много пар в ContentValues.

person Gangnus    schedule 08.02.2012
comment
Большое спасибо! Я этого не знал. - person Amer A.; 09.02.2012
comment
тогда отметьте ответ, пожалуйста :-). Кстати, мне тоже надо проверить, правильно ли я прочитал, что для коллекции карт добавление пары ключ-значение происходит не через add, а через put. Тот же пут может просто изменить значение, если ключ уже присутствует в карте. - person Gangnus; 09.02.2012