با سلام
برای ثبت اطلاعات در دیتابییس بنده از روش زیر استفاده میکنم (این روش وقتی خیلی کاربردی تر میشه ک تعداد فیلدها زیاد باشه) :
public SQLiteDatabase mydb;
public void insert_db(List<String> id, List<String> name, List<String> family, List<String> num){
String sql = "INSERT INTO tbl_Family (id_db, name_db, family_db, num_db) VALUES (?, ?, ?, ?)";
final SQLiteStatement statement = mydb.compileStatement(sql);
mydb.beginTransaction();
int n = (name.size());
try {
for (int i = 0; i < n; i++) {
statement.clearBindings();
statement.bindLong(1, Integer.parseInt(id.get(i)));
statement.bindString(2, name.get(i));
statement.bindString(3, family.get(i));
statement.bindString(4, num.get(i));
statement.execute();
}
mydb.setTransactionSuccessful();
} catch (Exception e) {
//Log.i("BAD"," MOSHKELI HASTESH");
} finally {
mydb.endTransaction();
}
}
حالا اگه شما فقط یه مقدار به هر فیلد میخواهید بفرستید ، بجای آرایه لیست (مثلا) String یا int یا ... قرار دهید و for موجود را حذف کنید
همچنین id_db, name_db, family_db, num_db فیلدهای ما در دیتابیس هستند
امیدوارم بدردتون بخوره ، من سالهاس از این روش استفاده میکنم