我正在使用Android中的SQLite制作应用。
我想在表中插入500行,但是我真的不知道如何插入很多行。我试图通过输入dbInsert()代码插入10行,但是输入500行却花费了大量代码,这使我的应用程序运行缓慢。这些是我的代码。
public WordDBRecord open() throws SQLException {
dbHelper = new WordDBHelper(context, "WordDB", null, 1);
database = dbHelper.getWritableDatabase();
dbInsert("KeyWordDB", "Movie", "Terminator");
dbInsert("KeyWordDB","Sports","Soccer");
dbInsert("KeyWordDB","City","BeiJing");
dbInsert("KeyWordDB","Actor","Tom");
dbInsert("KeyWordDB","NBA Player","MJ");
return this;
}
public void dbInsert(String tableName, String category, String word) {
Log.d(TAG, "Insert Data ");
ContentValues contentValues = new ContentValues();
contentValues.put("CATEGORY", category);
contentValues.put("WORD", word);
long id = database.insert(tableName, null, contentValues);
Log.d(TAG, "id: " + id);
}
我已经搜索了方法,但是大多数告诉我要使用ArrayList和for循环。但是,作为初学者,我不太了解这种方法。
所以我的问题是如何使用for循环或ArrayList插入500行?
如果有人回答我的问题,我将不胜感激。谢谢
代替使用SQLITE basic,您可以使用SQLITE转到它自己的ROOM DB。
可以在官方google developer page上找到所有详细信息>
此外,您也可以看一下here给出的漂亮示例。
您可以像整个数组列表一样一堆插入数据。
就像插入单个项目一样容易
@Insert(onConflict = OnConflictStrategy.REPLACE) void insertAllOrders(Order order);
插入多个项目将是相同的
@Insert(onConflict = OnConflictStrategy.REPLACE) void insertAllOrders(List<Order> order);
让我知道是否有帮助