0

I have json object I get from php as the format here

[
 {
title: "Title 1",
status: "1",
category: "123"
 },
 {
title: "Title 2",
status: "1",
category: "123"
 }, ......
]

I got this (JSON Array) in the android and I want to insert it in sqlite, I have the database columns as the json keys I know we can do something like this but its not fast

for(int n = 0; n < JSONArray.length(); n++) {

JSONObject object = JSONArray.getJSONObject(n);

}

whats the fastest way to do it ? thanks

1
  • If you don't need to query the specific columns, I would recommend to store the json as a String in a field, and when needed use Gson to get it as a object Commented Aug 14, 2013 at 14:06

1 Answer 1

2

assuming that

  • you know how to write an android SQLiteHelper and
  • you stored the json response in a String json you can then do:

JSONObject jsonObj = new JSONObject(json);

then write a method in your sqlitehelper that does something similar to this:

public long insertRecord(JSONObject obj){  
   ContentValues values = new ContentValues();  
   values.put(TITLE, obj.getString("title"));  
   values.put(STATUS, obj.getInt("status"));  
   return database.insert(MY_TABLE, null, values);  
} 

For more info on how to create an SQLHelper look at this

Sign up to request clarification or add additional context in comments.

2 Comments

thank your for the answer but please I edited the question sorry its Json array not object
nothing changes really. Iterate the array and pass the objects one by one in the insertRecord function.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.