Pegar o resultado da query

PreparedStatement ps1 = con.prepareStatement("select count(*) from distribuicao where pro_codigo = ?");

como eu pego o resultado dessa query?
é um numero inteiro

quanto eu tento pegar um um int
ele da esse erro

com.microsoft.sqlserver.jdbc.SQLServerException: A result set was generated for update.

http://www.guj.com.br/article.show.logic?id=7

voce pode fazer assim

PreparedStatement ps1 = con.prepareStatement("select count(*) AS cont from distribuicao where pro_codigo = ?"); 
ResultSet rs = ps1.executeQuery();
Integer contador = rs.getInt("cont");

[code]String sql1 = “select count(*) AS cont from distribuicao where pro_codigo = ?”;
PreparedStatement ps1 = con.prepareStatement(sql1);
ps1.setInt(1, id);
ResultSet rs1 = ps1.executeQuery();

			Integer i = rs1.getInt("cont");
		
			System.out.println(i);[/code]

nao da p fazer desse jeito

erro:
com.microsoft.sqlserver.jdbc.SQLServerException: The result set has no current row.

Eu testei aki e encontrei o seu problema. Voce precisa chamar o proximo index do resultSet, da seguinte forma.

 String sql1 = "select count(*) AS cont from distribuicao where pro_codigo = ?";  
                 PreparedStatement ps1 = con.prepareStatement(sql1);  
                 ps1.setInt(1, id);  
                  ResultSet rs1 = ps1.executeQuery();   
                  //Esse if verifica se tem proximo objeto no result.
                  if(rs1.next()) 
                        Integer i = rs1.getInt("cont");  
               
                 System.out.println(i); 

Fiz o teste aki e com esse if funcionou. qq coisa posta ai de novo.