Visualizar en Swing el resultado de una consulta JDBC
estoy intentando conseguir leer el registro que obtengo de una sentencia sql sobre una bd, pero a la hora de visualizar el registro por JTextField, solo me da bien el DNI
private static void dispResultSet (ResultSet rs)
throws SQLException
{
ResultSetMetaData rsmd = rs.getMetaData ();
int numCols = rsmd.getColumnCount ();
boolean more=rs.next();
while(more){
for(int i=1;i<=numCols;i++){
//aqui ya no se como narices cogerlo, he probado asignando el valor del JTextField con rs.getString(i).. pero me da error de excepcion SQL
gracias por adelantado
private static void dispResultSet (ResultSet rs)
throws SQLException
{
ResultSetMetaData rsmd = rs.getMetaData ();
int numCols = rsmd.getColumnCount ();
boolean more=rs.next();
while(more){
for(int i=1;i<=numCols;i++){
//aqui ya no se como narices cogerlo, he probado asignando el valor del JTextField con rs.getString(i).. pero me da error de excepcion SQL
gracias por adelantado
cual es la excepcion que te salta, si puedieras ponerla para ser mas claro el error que te esta marcando
los errores que me dan son de excepcion de SQL
SQLState:24000
Message:[Administrador de controladores odbc] estado del cursor no valido
Vendor: 0
este es el error que me da.... si me pudierais decir porque da? ademas de que no me carga nada en los JTextFields que he puesto para visionar el resultado....
SQLState:24000
Message:[Administrador de controladores odbc] estado del cursor no valido
Vendor: 0
este es el error que me da.... si me pudierais decir porque da? ademas de que no me carga nada en los JTextFields que he puesto para visionar el resultado....
Puedes poner la función dispResultSet?
De todos modos esta va bien:
private static void dispResultSet (ResultSet rs)throws SQLException{
ResultSetMetaData rsmd = rs.getMetaData ();
int numCols = rsmd.getColumnCount ();
boolean more=rs.next();
while(more){
for(int i=1;i<=numCols;i++){
System.out.println(rs.getString(i));
}
more=rs.next();
}
}
El error creo que es que has puesto sólo rs.next() en lugar de more=rs.next()
Saludos!
De todos modos esta va bien:
private static void dispResultSet (ResultSet rs)throws SQLException{
ResultSetMetaData rsmd = rs.getMetaData ();
int numCols = rsmd.getColumnCount ();
boolean more=rs.next();
while(more){
for(int i=1;i<=numCols;i++){
System.out.println(rs.getString(i));
}
more=rs.next();
}
}
El error creo que es que has puesto sólo rs.next() en lugar de more=rs.next()
Saludos!
Lo que estas haciendo te permite recuparar los nombres de las columnas que devuelve la consulta, asi no te saca la excepcion
private static void dispResultSet (ResultSet rs)throws SQLException{
ResultSetMetaData rsmd = rs.getMetaData ();
int numCols = rsmd.getColumnCount ();
for(int i=1;i<=numCols;i++){
System.out.println(rs.getColumnName(i));
}
}
}
para recuperar la innformacion como tal, solo debes iterar el resulSet
private static void dispResultSet (ResultSet rs)throws SQLException{
ResultSetMetaData rsmd = rs.getMetaData ();
int numCols = rsmd.getColumnCount ();
for(int i=1;i<=numCols;i++){
System.out.println(rs.getColumnName(i));
}
}
}
para recuperar la innformacion como tal, solo debes iterar el resulSet