Objektet för ResultSet upprätthåller en markör som pekar på en rad i en tabell. Inledningsvis pekar markören på före den första raden.
Som standard kan ResultSet-objekt endast flyttas framåt och det går inte att uppdatera.
Men vi kan få det här objektet att röra sig framåt och bakåt genom att skicka antingen TYPE_SCROLL_INSENSITIVE eller TYPE_SCROLL_SENSITIVE i metoden createStatement(int,int) liksom vi kan göra det här objektet uppdateringsbart genom att:
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
Vanligt använda metoder för ResultSet-gränssnitt
1) public boolean next(): | används för att flytta markören till nästa rad från den aktuella positionen. |
2) offentlig boolesk föregående(): | används för att flytta markören till den föregående raden från den aktuella positionen. |
3) public boolean first(): | används för att flytta markören till den första raden i resultatuppsättningsobjektet. |
4) public boolean last(): | används för att flytta markören till den sista raden i resultatuppsättningsobjektet. |
5) public boolean absolute(int row): | används för att flytta markören till det angivna radnumret i ResultSet-objektet. |
6) offentlig boolesk relativ(int rad): | används för att flytta markören till det relativa radnumret i ResultSet-objektet, kan det vara positivt eller negativt. |
7) public int getInt(int columnIndex): | används för att returnera data för specificerat kolumnindex för den aktuella raden som int. |
8) public int getInt(String columnName): | används för att returnera data för specificerat kolumnnamn för den aktuella raden som int. |
9) public String getString(int columnIndex): | används för att returnera data för specificerat kolumnindex för den aktuella raden som String. |
10) public String getString(String columnName): | används för att returnera data för det angivna kolumnnamnet för den aktuella raden som String. |
Exempel på rullningsbar resultatuppsättning
Låt oss se det enkla exemplet på ResultSet-gränssnittet för att hämta data från 3:e raden.
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(); }}