Android SQLiteAssetHelperを使用して、SQL Web サーバーから Android SQLite データベースにデータを同期しようとしていますが、Web サーバーからデータを正常に検索して取得できますが、結果 (データ) を SQLite DB に挿入しようとするとアプリケーションがクラッシュします。
これは、ローカルの SQLite データベースにデータを挿入するソース コードです。
public long syncDB(String id, String kr_wd, String my_wd) {
String KEY_ID = "_id";
String KEY_KR = "kr_word";
String KEY_MYN = "myn_word";
String KEY_SYNC = "sync_db";
SQLiteDatabase db = getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_ID, id);
values.put(KEY_KR, kr_wd);
values.put(KEY_MYN, my_wd);
values.put(KEY_SYNC, 1);
return db.insert("words",null, values);
//db.close();
}
結果を SQLite DB に挿入しようとするプロセスは次のとおりです。
for (int i = 0; i < jArray.length(); i++) {
json_data = jArray.getJSONObject(i);
String word_id =json_data.getString("id");
String k_words = json_data.getString("kr_word");
String m_words =json_data.getString("myn_word");
al.add(word_id); //id
al1.add(k_words); //korea
al2.add(m_words); //myanmar
db.syncDB(word_id, k_words, m_words);
}