Tengo 2 tablas
- jhony, que tiene usuario, id, pass, rol
- archivos, que tiene idArchivo, nombreArchivo ,tamanoArchivo, archivo, usuario
Quiero recorrer la tabla jhony y por cada usuario contar cuantos archivos tiene. Luego imprimir usuario y cantidad de archivos. Este es el código que hice pero solo imprime el encabezado
Código:
mi clase conexión es:pag.println("<tr><td>Usuario</td><td>Cantidad de Archivos</td></tr>"); q1= "select * from jhony"; consulta1 = bd.ingreso.executeQuery(q1); String usuarioBD = consulta1.getString("usuario"); int contador; while(consulta1.next()){ contador=0; q2 = "select * from archivo where usuario='"+usuarioBD+"'"; consulta2 = bd.ingreso.executeQuery(q2); while(consulta2.next()){ contador++; } pag.println("<tr><td>"+usuarioBD+"</td><td>"+contador+"</td></tr>"); }
Código:
public class Conexion { Connection admin=null; Statement ingreso=null; ResultSet valida=null; String conexion="jdbc:mysql://localhost:3306/base"; public void init(ServletConfig con)throws ServletException, InstantiationException, IllegalAccessException { if(admin==null || ingreso==null) { try { Class.forName("com.mysql.jdbc.Driver").newInstance(); admin = DriverManager.getConnection (conexion,"root", ""); //System.out.println(admin); ingreso = admin.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); } catch(ClassNotFoundException edr) { System.out.println("Error Con La Carga Driver"); System.out.println(edr.getMessage()); } catch(SQLException edb) { System.out.println("Error Con La Conexion"); System.out.println(edb.getMessage()); } } } public void destroy() { try { admin.close(); ingreso.close(); } catch(SQLException e){} } }