我解析了一个 json 字符串并将值存储在一个数组列表中,现在我想将这些值放入数据库中,我正在执行异步任务 onbackground 方法,如下所示:
ArrayList<HashMap<String, String>> budget_val = new ArrayList<HashMap<String, String>>();
HashMap<String, String> budget_Val_map = new HashMap<String, String>();
budget_Val_map.put(PRODUCT_CAKE, cake);
budget_Val_map.put(PRODUCT_YEASTEXTRACT, yeastextract);
budget_Val_map.put(PRODUCT_BIFLAVOURS, biflavours);
budget_Val_map.put(PRODUCT_YEASTNUTRIFERM, yeastnutriferm);
budget_val.add(budget_Val_map);
dbHelper.open();
dbHelper.topinchartsRecord(new ProductCategory(budget_val));
现在在我的数据库适配器中,我创建了一个表并插入这些值,如下所示:
public void topinchartsRecord(ProductCategory productCategory) {
try{
insertRecords(productCategory.getBudget_val(), SQLITE_TABLE3);
}catch (Exception e) {
String LOG_TAG = "mylog";
Log.e(LOG_TAG, "error reporting", e);
}}
private void insertRecords(ArrayList<HashMap<String, String>> budget_val,
String sqliteTable3) {
if (budget_val != null && budget_val.size() > 0) {
ContentValues con = new ContentValues();
for (int i = 0; i < budget_val.size(); i++) {
con.clear();
HashMap<String, String> row = budget_val.get(i);
Iterator<String> it = row.keySet().iterator();
while (it.hasNext()) {
String columnName = it.next();
con.put(columnName, row.get(columnName));
}
mDb.insert(SQLITE_TABLE3, null, con);
Log.d(LOG_TAG, "error reporting");
System.out.println("Control entered last line of the insert record=========== 3");
}}}
但是我的数据库没有显示任何内容,跟踪中没有错误:请让我知道我是否做得对?