First you have to do a special ResultSet
Algunos drivers permiten crear scrollable result sets, con lo cual se puede
ir a la ultima fila, tomar su posición, y volver al principio.
Lo que no se es si esto es optimo o no. Supongo depende de como se
implemente el Driver. Me gustaría saber que opináis.
stmt
con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_
ONLY);
rs = stmt.executeQuery(sqlQuery);
rs.last();
int Size = rs.getRow();
rs.beforeFirst();
The example :
package metadata;
import java.sql.*;
import java.util.*;
import connections.*;
public class GetResultSetMetaDataTwo {
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
ResultSet rset = null;
try {
conn = ConnectionFactory.getConnection();
stmt = conn.createStatement();
stmt = conn.createStatement();
String sql
" select recordings.recordingid, tracks.tracknumber from" +
"recordings, tracks where recordings.recordingid=-1";
rset = stmt.executeQuery(sql);
rset = stmt.executeQuery(sql);
ResultSetMetaData rsmd = rset.getMetaData();
int cols = rsmd.getColumnCount();
for (int i = 1; i <= cols; i++) {
System.out.println("Column " + i);
System.out.println("Name: " + rsmd.getColumnName(i));
System.out.println("Table Name: " + rsmd.getTableName(i));
System.out.println("Schema Name: " + rsmd.getSchemaName(i));
System.out.println("Class: " + rsmd.getColumnClassName(i));
System.out.println("Type: " + rsmd.getColumnType(i));
System.out.println("Type name: " + rsmd.getColumnTypeName(i));
System.out.println("Auto increment: " + rsmd.isAutoIncrement(i));
System.out.print("Is nullable: ");
switch (rsmd.isNullable(i)) {
case ResultSetMetaData.columnNoNulls:
System.out.println("No Nulls");
break;
case ResultSetMetaData.columnNullable:
System.out.println("Nullable");
break;
case ResultSetMetaData.columnNullableUnknown:
System.out.println("Unknown");
break;
}
System.out.println();
}
} catch (Exception e) {
e.printStackTrace();
}
finally {
ConnectionFactory.close(rset);
ConnectionFactory.close(stmt);
ConnectionFactory.close(conn);
}
}
}
Julio Oliveira - jOliveiraAR@y...
Java Developer - Ingeniería en Software
Cursos Java Personalizados via Mail
Cursos_mail@y...
-----Mensaje original-----
De: Mazin Salih [mailto:mbsalih@h...]
Enviado el: viernes, 18 de octubre de 2002 14:01
Para: Pro_JavaServer_Pages
Asunto: [pro_jsp] resultset
Hello,
can anyone tell me how to find the size of a ResultSet??
I have been trying to use :
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select ....
out.println("<P>"+rs.getFetchSize()+"</P>");
but it is not working
Thanks