Несортированное сохранение данных из php в sqlite - PullRequest
0 голосов
/ 09 июля 2019

Я сохраняю получение данных с внешнего сервера.Вот пример данных, которые я получаю:

enter image description here

Что происходит, когда я сохраняю их в mysqlite дБ,следуйте порядку id, вот его пример:

enter image description here

Вот мой код для извлечения данных:

private class getData extends AsyncTask<Void, Void, Void> {
    @Override
    protected Void doInBackground(Void... params) {
        Http sh = new Http();
        try {
            String URLS = "http://localhost/sample.php?date="+datePHP+"&gametype="+gamePHP+"&time="+timePHP+"&bettype="+typePHP;
            String jsonStr = sh.makeServiceCall(URLS);
            if(jsonStr != null){
                JSONObject jsonObj = new JSONObject(jsonStr);
                JSONArray sims = (JSONArray)jsonObj.get("mmi");
                for (int i = 0; i < sims.length(); i++) {
                    JSONObject c = sims.getJSONObject(i);
                    String betid = c.getString("id");
                    String betnumber = c.getString("betnumber");
                    String betamount = c.getString("betamount");
                    boolean insertBets = databaseHelper.addBets(betid, betnumber, betamount, timePHP, datePHP,gamePHP,typePHP);
                    if (insertBets){
                        System.out.println("SAVED");
                    }else{
                        System.out.println("UPDATED");
                    }
                }
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
        return null;
    }
    @Override
    protected void onPostExecute(Void result) {
        runOnUiThread(() -> {
            populatelistview();
        });
    }
}

Код для сохранения в sqlite:

public boolean addBets(String betid, String betnum, String betAmt, String betTime, String betDate, String gameType, String betType) {
    SQLiteDatabase db = getWritableDatabase();
    ContentValues contentValues = new ContentValues();
    contentValues.put("betid", betid);
    contentValues.put("betNum", betnum);
    contentValues.put("betAmt", betAmt);
    contentValues.put("betTime", betTime);
    contentValues.put("betDate", betDate);
    contentValues.put("gameType", gameType);
    contentValues.put("betType", betType);

    String sql = "SELECT * FROM betsx WHERE betNum ='" + betnum + "' AND betTime ='" + betTime + "' AND betDate = '" + betDate + "' AND gameType ='" + gameType + "' AND betType ='" + betType + "'";
    Cursor cursor = db.rawQuery(sql, null);
    db.insert("betsx", null, contentValues);
    System.out.println(betnum + "//" + betAmt);
    return true;
}
...