データベースにデータを挿入する - それを行う最良の方法は何ですか
オブジェクトのプロパティがテーブルの列と等しくなるテーブルを表す独自のオブジェクトを作成することをお勧めします。
public class Contact {
private String name;
private String number;
private String image;
private boolean conn;
//getters and setters
}
あなたのアプローチは「スパゲッティコード」のように聞こえます。ArrayList を 4 つ持つ必要はなく、この設計は効率的で正しくありません。
これで、500 個の子を持つ Contact オブジェクトの ArrayList が 1 つできました。
挿入する最良の方法は何ですか?
確かに、挿入をTRANSACTION
迅速に高速化するものに挿入をラップすると、データベースを扱う主なものがはるかに安全になり、データベースの整合性が失われる可能性を気にする必要がなくなります。
トランザクションの例 (私の個人的なサンプル プロジェクトからの 1 つの方法):
public boolean insertTransaction(int count) throws SQLException {
boolean result = false;
try {
db = openWrite(DataSource.getInstance(mContext));
ContentValues values = new ContentValues();
if (db != null) {
db.beginTransaction();
for (int i = 0; i < count; i++) {
values.put(SQLConstants.KEY_TYPE, "type" + i);
values.put(SQLConstants.KEY_DATE, new Date().toString());
db.insertOrThrow(SQLConstants.TEST_TABLE_NAME, SQLConstants.KEY_TYPE, values);
values.clear();
}
db.setTransactionSuccessful();
result = true;
}
return result;
}
finally {
if (db != null) {
db.endTransaction();
}
close(db);
}
}