logo

ResultSet-grensesnitt

Objektet til ResultSet opprettholder en markør som peker på en rad i en tabell. Til å begynne med peker markøren til før den første raden.

Som standard kan ResultSet-objektet bare flyttes fremover, og det kan ikke oppdateres.

Men vi kan få dette objektet til å bevege seg fremover og bakover ved å sende enten TYPE_SCROLL_INSENSITIVE eller TYPE_SCROLL_SENSITIVE i createStatement(int,int)-metoden, så vel som vi kan gjøre dette objektet oppdaterbart ved å:

 Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); 

Vanlig brukte metoder for ResultSet-grensesnitt

1) offentlig boolsk neste(): brukes til å flytte markøren til den neste raden fra gjeldende posisjon.
2) offentlig boolsk forrige(): brukes til å flytte markøren til den forrige raden fra gjeldende posisjon.
3) offentlig boolsk først(): brukes til å flytte markøren til den første raden i resultatsettobjektet.
4) offentlig boolsk siste(): brukes til å flytte markøren til siste rad i resultatsettobjektet.
5) offentlig boolsk absolutt(int rad): brukes til å flytte markøren til det angitte radnummeret i ResultSet-objektet.
6) offentlig boolsk slektning (int rad): brukes til å flytte markøren til det relative radnummeret i ResultSet-objektet, kan det være positivt eller negativt.
7) public int getInt(int columnIndex): brukes til å returnere data for spesifisert kolonneindeks for gjeldende rad som int.
8) public int getInt(String columnName): brukes til å returnere dataene til spesifisert kolonnenavn for gjeldende rad som int.
9) offentlig streng getString(int columnIndex): brukes til å returnere data for spesifisert kolonneindeks for gjeldende rad som streng.
10) public String getString(String columnName): brukes til å returnere dataene for spesifisert kolonnenavn for gjeldende rad som streng.

Eksempel på rullbart resultatsett

La oss se det enkle eksemplet på ResultSet-grensesnittet for å hente dataene fra tredje rad.

 import java.sql.*; class FetchRecord{ public static void main(String args[])throws Exception{ Class.forName('oracle.jdbc.driver.OracleDriver'); Connection con=DriverManager.getConnection('jdbc:oracle:thin:@localhost:1521:xe','system','oracle'); Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); ResultSet rs=stmt.executeQuery('select * from emp765'); //getting the record of 3rd row rs.absolute(3); System.out.println(rs.getString(1)+' '+rs.getString(2)+' '+rs.getString(3)); con.close(); }}