将多行从Android中的SQLite发送到MySQL

将多行从Android中的SQLite发送到MySQL,android,mysql,json,sqlite,Android,Mysql,Json,Sqlite,下面的代码有什么问题 其想法是从Android对本地数据库(SQLite)进行查询,从而获得该查询产生的数据,并通过JSON将其发送到MySQL中的中央数据库 我这里的解决方案显然是可行的(即从SQLite中的本地数据库发送所有行) 但事实并非如此:它只发送到第一行。有人能帮我吗?我感谢你的帮助 ControllerPontos datasource = new ControllerPontos(getApplicationContext()); List<

下面的代码有什么问题

其想法是从Android对本地数据库(SQLite)进行查询,从而获得该查询产生的数据,并通过JSON将其发送到MySQL中的中央数据库

我这里的解决方案显然是可行的(即从SQLite中的本地数据库发送所有行)

但事实并非如此:它只发送到第一行。有人能帮我吗?我感谢你的帮助

        ControllerPontos datasource = new ControllerPontos(getApplicationContext());
        List<Pontos> pontosJogador = datasource.getRowsNotUploaded();
        Log.d("CARREGAMENTO LINHAS: ", "OK");

        if(pontosJogador.size() > 0) {
            for(Pontos linha : pontosJogador) {
                // listagem de elementos da query
                String log = "IDInscricao: "+linha.getIDInscricao()+" ,IDMissao: " + linha.getIDMissao() + " ,IDNivel: " + linha.getIDNivel() +
                     "IDTarefa: "+ linha.getIDTarefa()+"data: "+linha.getData()+"tempo: "+linha.getTempo()+"pontos: "+linha.getPontos();
                Log.d("LISTAGEM: ", log);

                idPontuacao = linha.getID();
                idInscricao = linha.getIDInscricao();
                idMissao = linha.getIDMissao();
                idNivel = linha.getIDNivel();
                idTarefa = linha.getIDTarefa();
                data = linha.getData();
                tempo = linha.getTempo();
                pontos = linha.getPontos();

                // vamos fazer o sincronismo linha a linha da tabela

                // parametros da lista
                Log.d("A CARREGAR ARRAYLIST", "Inicializar");
                ArrayList<NameValuePair> params = new ArrayList<NameValuePair>();
                params.add(new BasicNameValuePair("idInscricao", Integer.toBinaryString(idInscricao)));
                params.add(new BasicNameValuePair("idMissao", Integer.toBinaryString(idMissao)));
                params.add(new BasicNameValuePair("idNivel", Integer.toBinaryString(idNivel)));
                params.add(new BasicNameValuePair("idTarefa", Integer.toBinaryString(idTarefa)));
                params.add(new BasicNameValuePair("data", data));
                params.add(new BasicNameValuePair("tempo", Integer.toBinaryString(tempo)));
                params.add(new BasicNameValuePair("pontos", Integer.toBinaryString(pontos)));

                Log.d("ENVIO PONTOS", "Inicializar");

                // passagem dos dados para o script
                JSONObject json = jsonParser.makeHttpRequest(LOGIN_URL, "POST", params);

                // fazer update da tabela pontuacoes
                //datasource.updatePontos(idPontuacao);

                // resposta JSON
                Log.d("Tentar sincronizacao...", json.toString());

                try {
                    // verificacao do sucesso
                    sucesso = json.getInt(TAG_SUCESSO);
                    if(sucesso == 1) {
                        Log.d("Pontos adicionados!", json.toString());               
                        finish();
                        return json.getString(TAG_MENSAGEM);
                    }else{
                        Log.d("Envio de pontos falhou!", json.getString(TAG_MENSAGEM));
                        return json.getString(TAG_MENSAGEM); 
                    }
                } catch (JSONException e) {
                    e.printStackTrace();
                }

            }// fecha FOR
        }
        else{
            Log.d("CARREGAMENTO LINHAS: ", "NAO HA LINHAS");
        }
        return null;
    } // fecha doInBackground

    /**
    * quando terminar o envio de dados vamos remover a caixa de dialogo
    * **/
    protected void onPostExecute(String file_url) {
        // dismiss the dialog once product deleted
        pDialog.dismiss();

        if (file_url != null){
            Toast.makeText(UploadDados.this, file_url, Toast.LENGTH_LONG).show();
        }
    }
}
ControllerPontos数据源=新的ControllerPontos(getApplicationContext());
List pontosJogador=datasource.getrowsnotupload();
Log.d(“CARREGAMENTO LINHAS:,“OK”);
如果(pontosJogador.size()>0){
对于(Pontos linha:Pontos Jogador){
//数据查询元素列表
字符串log=“IDInscricao:”+linha.getIDInscricao()+”,IDMissao:“+linha.getIDMissao()+”,IDNivel:“+linha.getIDNivel()+
“IDTarefa:”+linha.getIDTarefa()+“data:”+linha.getData()+“tempo:”+linha.getTempo()+“pontos:”+linha.getPontos();
Log.d(“列表管理:”,Log);
idPontuacao=linha.getID();
idInscricao=linha.getIDInscricao();
idMissao=linha.getIDMissao();
idNivel=linha.getIDNivel();
idTarefa=linha.getIDTarefa();
data=linha.getData();
tempo=linha.getTempo();
pontos=linha.getPontos();
//瓦莫斯·法泽·奥辛克罗尼莫·林哈·达塔贝拉
//利斯塔参数酒店
Log.d(“CARREGAR ARRAYLIST”、“Inicializar”);
ArrayList params=新的ArrayList();
params.add(新的BasicNameValuePair(“idInscricao”,Integer.tobinarysting(idInscricao));
params.add(新的BasicNameValuePair(“idMissao”,Integer.toBinaryString(idMissao));
add(新的BasicNameValuePair(“idNivel”,Integer.toBinaryString(idNivel));
add(新的BasicNameValuePair(“idTarefa”,Integer.tobinarysting(idTarefa));
参数添加(新的BasicNameValuePair(“数据”,数据));
add参数(新的BasicNameValuePair(“tempo”,Integer.ToBinarysting(tempo));
添加参数(新的BasicNameValuePair(“pontos”,Integer.toBinaryString(pontos));
Log.d(“ENVIO PONTOS”、“Inicializar”);
//帕萨吉姆多斯达多斯帕拉奥脚本
JSONObject json=jsonParser.makeHttpRequest(登录URL,“POST”,参数);
//法泽·塔贝拉·蓬图阿科斯酒店
//datasource.updatePontos(idPontuacao);
//resposta JSON
Log.d(“Tentar sincronizacao…”,json.toString());
试一试{
//可可成功了吗
sucesso=json.getInt(TAG_sucesso);
如果(sucesso==1){
Log.d(“Pontos adicionados!”,json.toString();
完成();
返回json.getString(TAG_mensage);
}否则{
Log.d(“Envio de pontos falhou!”,json.getString(TAG_mensage));
返回json.getString(TAG_mensage);
}
}捕获(JSONException e){
e、 printStackTrace();
}
}//费卡
}
否则{
Log.d(“CARREGAMENTO LINHAS:,“NAO HA LINHAS”);
}
返回null;
}//fecha doInBackground
/**
*环境数据终端拆除器
* **/
受保护的void onPostExecute(字符串文件\u url){
//删除产品后关闭对话框
pDialog.disclose();
如果(文件url!=null){
Toast.makeText(uploadadados.this,file_url,Toast.LENGTH_LONG.show();
}
}
}