Eu estou tentando criar um codigo que faça uma busca numa tabela (banco sqlserver) e me retorne o numero de linhas do meu sql. Mas estou com problema capturar esse valor no java.
Meu codigo esta abaixo:
publicclassControlador{java.sql.Connectioncon=null;privateStringurl="jdbc:sqlserver://";privateStringservidor="127.0.0.1";privateStringporta="1433;";privateStringbancoDados="rtsSistemas";privateStringusuario="sa";privateStringsenha="schmitt";privateStringstringConexao=url+servidor+":"+porta+";databaseName="+bancoDados+";";publicStringcontaPendencia()throwsClassNotFoundException,SQLException{java.util.DatehoraAtual=newjava.util.Date();Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");con=java.sql.DriverManager.getConnection(stringConexao,usuario,senha);if(con!=null){System.out.println("conexao ok");StringselectSql="SELECT count (*) FROM Relacionamento where dataProximaAcao >= '19-08-2010'";StatementcomandoSelect=con.createStatement();ResultSetc=comandoSelect.executeQuery(selectSql);intteste=aquieunaoseiquemetodoeuusoparapegaroquantidadedelinhasdoResultSet// System.out.println("Pendecias desta semana = "+ teste );con.close();System.out.println("conexao fechada");}returnnull;}}
Se eu estiver indo pelo caminho errado me avisem por favor, agradeco desde ja.
Eu estou tentando criar um codigo que faça uma busca numa tabela (banco sqlserver) e me retorne o numero de linhas do meu sql. Mas estou com problema capturar esse valor no java.
Meu codigo esta abaixo:
publicclassControlador{java.sql.Connectioncon=null;privateStringurl="jdbc:sqlserver://";privateStringservidor="127.0.0.1";privateStringporta="1433;";privateStringbancoDados="rtsSistemas";privateStringusuario="sa";privateStringsenha="schmitt";privateStringstringConexao=url+servidor+":"+porta+";databaseName="+bancoDados+";";publicStringcontaPendencia()throwsClassNotFoundException,SQLException{java.util.DatehoraAtual=newjava.util.Date();Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");con=java.sql.DriverManager.getConnection(stringConexao,usuario,senha);if(con!=null){System.out.println("conexao ok");StringselectSql="SELECT count (*) FROM Relacionamento where dataProximaAcao >= '19-08-2010'";StatementcomandoSelect=con.createStatement();ResultSetc=comandoSelect.executeQuery(selectSql);intteste=aquieunaoseiquemetodoeuusoparapegaroquantidadedelinhasdoResultSet// System.out.println("Pendecias desta semana = "+ teste );con.close();System.out.println("conexao fechada");}returnnull;}}
Se eu estiver indo pelo caminho errado me avisem por favor, agradeco desde ja.
Boa noite, eu acho que entendi um pouco seu problema, você quer fazer uma maneira que conte quantas linha foram retornada do ResultSet, caso seja isso mesmo tente fazer isso aqui… caso não seja isso que eu entendi ou caso minha sugestão não de certo você avisa…
publicclassControlador{java.sql.Connectioncon=null;privateintteste=0;// DECLAEIA VARIÁVEL TESTE AQUI... privateStringurl="jdbc:sqlserver://";privateStringservidor="127.0.0.1";privateStringporta="1433;";privateStringbancoDados="rtsSistemas";privateStringusuario="sa";privateStringsenha="schmitt";privateStringstringConexao=url+servidor+":"+porta+";databaseName="+bancoDados+";";publicIntcontaPendencia()throwsClassNotFoundException,SQLException{java.util.DatehoraAtual=newjava.util.Date();Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");con=java.sql.DriverManager.getConnection(stringConexao,usuario,senha);if(con!=null){System.out.println("conexao ok");StringselectSql="SELECT count (*) FROM Relacionamento where dataProximaAcao >= '19-08-2010'";StatementcomandoSelect=con.createStatement();ResultSetc=comandoSelect.executeQuery(selectSql);intteste=aquieunaoseiquemetodoeuusoparapegaroquantidadedelinhasdoResultSetwhile(c.next){// Enquanto existir dados repita;teste++;}// System.out.println("Pendecias desta semana = "+ teste );con.close();System.out.println("conexao fechada");}returnteste;}}
Não sei se entendi realmente o que vc deseja, mas esse se for realmente o que eu entendi, esse método irá retorna a quantidade de linha da consulta!!!
Z
Zeed01
Boa madrugada galera,
Porque não faz algo mais simples, substituindo isso:
SELECT count (*) FROM Relacionamento where dataProximaAcao >= ‘19-08-2010’
por isso
SELECT count (*) total FROM Relacionamento where dataProximaAcao >= ‘19-08-2010’
e depois pegando o valor de total, através de algo como c.getLong(total). (Não sei se seria getLong, mas se nao for será outro getAlgumaCoisa.
[]s
H
Hebert_Coelho
Caso depois de contar, vc não tenha que trabalhar com os valores retornados, faça como o Zeed01 falou que vai ser melhor para sua aplicação.