[RESOLVIDO] Programa não entra no loop do FOR

Preciso saber se o tablet que peguei consegue realizar +/- 600 inserts ao iniciar a app, bem simples, mas ele não mostra o Log dentro do FOR, tem algo errado que eu não estou vendo?

[code]
public boolean populaBanco(){
boolean ResultadoPopula = false;
Log.v(“SocialAlimenta2Activity”, “ResultadoPopula = false”);
try{
Log.v(“SocialAlimenta2Activity”, “try{”);
openDB();
Log.v(“SocialAlimenta2Activity”, “openDB();”);
for (int j=0;j>600;j++){
Log.v(“SocialAlimenta2Activity”, “for (int j=0;j>600;j++)”);
String insertE = “insert into tab_SocialA_Endereco (SIASN, END, NUMERO, AP, BLOCO, COMPLEMENTO, REFERENCIA, CEP, BAIRRO)values (”+j+", ‘RUA XINGU’, 691, ‘’, ‘’, ‘CASA 1’, ‘’, ‘12200-000’, ‘223’);";
BancoDados.execSQL(insertE);
Log.v(“SocialAlimenta2Activity”, “BancoDados.execSQL(insertE);”);
for (int i=0; i > 5;i++){
String insertDP = “insert into tab_SocialA_DadosPessoais (SIASN, IDMEMBRO, SEXO, ESTCIVIL, ESTUDA, COR, ALFABETIZA, FREQESCOLA)values (”+j+", “+i+”, ‘4’, ‘15’, ‘61’, ‘8’, ‘64’, ‘63’)";
BancoDados.execSQL(insertDP);/**/
String insertD = “insert into tab_SocialA_Documentos (SIASN, IDMEMBRO, RG, RGEXP, RGUF, RGDATAEXP, CPF, CPFDATAEXP, CTPS, CTPSSERIE, CTPSDATAEXP, NIS)values (”+j+", “+i+”, ‘273627090’, ‘SSPSP’, 55, ‘1-07-1974’, ‘18562427810’, ‘01-04-2001’, ‘’, ‘’, null, ‘’);";
BancoDados.execSQL(insertD);
String insertEs = “insert into tab_SocialA_Escolaridade (SIASN, IDMEMBRO, ENSINO, ENSCURSO, ENSSERIE, ENSCONCLUIDO, ENSESP)values (1, “+i+”, ‘’, ‘70’, ‘0’, ‘2’, ‘’);”;
BancoDados.execSQL(insertEs);
String insertGF = “insert into tab_SocialA_GrupoFamiliar (SIASN, IDMEMBRO)values (”+j+", “+i+”);";
BancoDados.execSQL(insertGF);
String insertN = “insert into tab_SocialA_Nome (SIASN, IDMEMBRO, NOME, DNASC, NOMEMAE, NOMEPAI, NATURALCIDADE) values (”+j+", “+i+”, ‘ALEX APARECIDO MARTINS’, to_date(‘31-10-1974’, ‘dd-mm-yyyy’), ‘NATALINA DE FATIMA DO CARMO’, ‘CLAUDINE JOSE MARTINS’, ‘4972’);";
BancoDados.execSQL(insertN);
String insertT = “insert into tab_SocialA_Trabalho (SIASN, IDMEMBRO, TRABALHA, TIPO, RENDIMENTO, HORASPORMES, OCUPACAO, INSS)values (”+j+", “+i+”, ‘1’, ‘77’, ‘120’, ‘48’, ‘45’, ‘2’);";
BancoDados.execSQL(insertT);
String insertTOFR = “insert into tab_SocialA_TrabalhoOFR (SIASN, IDMEMBRO, FONTE, VALOR, COMPROVANTE)values (”+j+", “+i+”, ‘11’, ‘62’, ‘2’);";
BancoDados.execSQL(insertTOFR);
Log.v(“SocialAlimenta2Activity”, “executado com sucesso = “+j+”/”+i);
}
}
ResultadoPopula = true;
Log.v(“SocialAlimenta2Activity”, “populaBanco() executado com sucesso”);

	}catch(Exception e){
		mensagemAlerta("Erro","Erro Ao Criar Banco ");
		 Log.e("SocialAlimenta2Activity", "populaBanco() erro:"+e.getMessage());
	}finally{
		closeDB();
	}
	return ResultadoPopula;
}[/code]

[quote=rodrigo_ror]Preciso saber se o tablet que peguei consegue realizar +/- 600 inserts ao iniciar a app, bem simples, mas ele não mostra o Log dentro do FOR, tem algo errado que eu não estou vendo?

[code]
public boolean populaBanco(){
boolean ResultadoPopula = false;
Log.v(“SocialAlimenta2Activity”, “ResultadoPopula = false”);
try{
Log.v(“SocialAlimenta2Activity”, “try{”);
openDB();
Log.v(“SocialAlimenta2Activity”, “openDB();”);
for (int j=0;j>600;j++){
Log.v(“SocialAlimenta2Activity”, “for (int j=0;j>600;j++)”);
String insertE = “insert into tab_SocialA_Endereco (SIASN, END, NUMERO, AP, BLOCO, COMPLEMENTO, REFERENCIA, CEP, BAIRRO)values (”+j+", ‘RUA XINGU’, 691, ‘’, ‘’, ‘CASA 1’, ‘’, ‘12200-000’, ‘223’);";
BancoDados.execSQL(insertE);
Log.v(“SocialAlimenta2Activity”, “BancoDados.execSQL(insertE);”);
for (int i=0; i > 5;i++){
String insertDP = “insert into tab_SocialA_DadosPessoais (SIASN, IDMEMBRO, SEXO, ESTCIVIL, ESTUDA, COR, ALFABETIZA, FREQESCOLA)values (”+j+", “+i+”, ‘4’, ‘15’, ‘61’, ‘8’, ‘64’, ‘63’)";
BancoDados.execSQL(insertDP);/**/
String insertD = “insert into tab_SocialA_Documentos (SIASN, IDMEMBRO, RG, RGEXP, RGUF, RGDATAEXP, CPF, CPFDATAEXP, CTPS, CTPSSERIE, CTPSDATAEXP, NIS)values (”+j+", “+i+”, ‘273627090’, ‘SSPSP’, 55, ‘1-07-1974’, ‘18562427810’, ‘01-04-2001’, ‘’, ‘’, null, ‘’);";
BancoDados.execSQL(insertD);
String insertEs = “insert into tab_SocialA_Escolaridade (SIASN, IDMEMBRO, ENSINO, ENSCURSO, ENSSERIE, ENSCONCLUIDO, ENSESP)values (1, “+i+”, ‘’, ‘70’, ‘0’, ‘2’, ‘’);”;
BancoDados.execSQL(insertEs);
String insertGF = “insert into tab_SocialA_GrupoFamiliar (SIASN, IDMEMBRO)values (”+j+", “+i+”);";
BancoDados.execSQL(insertGF);
String insertN = “insert into tab_SocialA_Nome (SIASN, IDMEMBRO, NOME, DNASC, NOMEMAE, NOMEPAI, NATURALCIDADE) values (”+j+", “+i+”, ‘ALEX APARECIDO MARTINS’, to_date(‘31-10-1974’, ‘dd-mm-yyyy’), ‘NATALINA DE FATIMA DO CARMO’, ‘CLAUDINE JOSE MARTINS’, ‘4972’);";
BancoDados.execSQL(insertN);
String insertT = “insert into tab_SocialA_Trabalho (SIASN, IDMEMBRO, TRABALHA, TIPO, RENDIMENTO, HORASPORMES, OCUPACAO, INSS)values (”+j+", “+i+”, ‘1’, ‘77’, ‘120’, ‘48’, ‘45’, ‘2’);";
BancoDados.execSQL(insertT);
String insertTOFR = “insert into tab_SocialA_TrabalhoOFR (SIASN, IDMEMBRO, FONTE, VALOR, COMPROVANTE)values (”+j+", “+i+”, ‘11’, ‘62’, ‘2’);";
BancoDados.execSQL(insertTOFR);
Log.v(“SocialAlimenta2Activity”, “executado com sucesso = “+j+”/”+i);
}
}
ResultadoPopula = true;
Log.v(“SocialAlimenta2Activity”, “populaBanco() executado com sucesso”);

	}catch(Exception e){
		mensagemAlerta("Erro","Erro Ao Criar Banco ");
		 Log.e("SocialAlimenta2Activity", "populaBanco() erro:"+e.getMessage());
	}finally{
		closeDB();
	}
	return ResultadoPopula;
}[/code][/quote]

posta esse método: BancoDados.execSQL();

Erro eu não parei pra ver se tinha,mas que tá HORRIVEL isso tá.

Esse codigo tem outras coisas como a criação das tabelas, mas esta parte está ok.
O que to achando estranho é que ele não entra no FOR, pq ele não faz os logs nem os inserts.
Isso ta tudo na activity MAIN … :? … será q ele não executa for’s grandes? :shock:

	//Declara base de dados
	public static SQLiteDatabase BancoDados = null;
	public static String nomeBanco = "SocialAlimenta";
	public void openDB(){
		try{

			BancoDados = openOrCreateDatabase(nomeBanco,MODE_WORLD_READABLE,null);
			Log.v("SocialAlimenta2Activity", "BancoDados.openOrCreateDatabase();");
		}catch (Exception E){
			Log.e("SocialAlimenta2Activity", "Erro em BancoDados.close();"+E.getMessage());
		} 
	}
	public void closeDB(){
      	BancoDados.close();
     	Log.v("SocialAlimenta2Activity", "BancoDados.close();");
	}

Oi Rodrigo,

O sinal nos seus fors está trocado:

for(int j = 0; j > 600; j++)

Ele não vai entrar no for, porque j é inicialmente 0. Como 0 não é maior que 600 ele nem entra (o mesmo no outro for)

Tente trocar o sinal de > para <
:slight_smile:

:shock: :shock: :shock: POuts! verdade! valeu toshikurauchi! – era só isso mesmo… Valeu mesmo! um erro bem de quem num dorme bem faz uns dias por causa de uns programas …kkk

Valeu mesmo