ResultSet-objekti ylläpitää kohdistinta, joka osoittaa taulukon riville. Aluksi kohdistin osoittaa ennen ensimmäistä riviä.
Oletuksena ResultSet-objektia voidaan siirtää vain eteenpäin, eikä se ole päivitettävissä.
Mutta voimme saada tämän objektin liikkumaan eteen- ja taaksepäin ohittamalla joko TYPE_SCROLL_INSENSITIVE- tai TYPE_SCROLL_SENSITIVE-parametrin createStatement(int,int) -metodissa, sekä voimme tehdä tästä objektista päivitettävissä olevan:
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
Yleisesti käytetyt ResultSet-rajapinnan menetelmät
1) julkinen boolean next(): | käytetään siirtämään kohdistin seuraavalle riville nykyisestä sijainnista. |
2) julkinen boolen edellinen(): | käytetään siirtämään kohdistin nykyisestä sijainnista edelliselle riville. |
3) julkinen boolean ensin(): | käytetään siirtämään kohdistin tulosjoukkoobjektin ensimmäiselle riville. |
4) julkinen boolen viimeinen(): | käytetään siirtämään kohdistin tulosjoukkoobjektin viimeiselle riville. |
5) julkinen looginen absoluuttinen arvo (int row): | käytetään siirtämään kohdistin määritettyyn rivinumeroon ResultSet-objektissa. |
6) julkinen boolen suhteellinen (int row): | käytetään siirtämään kohdistin ResultSet-objektin suhteelliseen rivinumeroon, se voi olla positiivinen tai negatiivinen. |
7) julkinen int getInt(int columnIndex): | käytetään palauttamaan nykyisen rivin määritetyn sarakeindeksin tiedot int. |
8) julkinen int getInt(merkkijonosarakkeen nimi): | käytetään palauttamaan nykyisen rivin määritetyn sarakkeen nimen tiedot int. |
9) julkinen merkkijono getString(int columnIndex): | käytetään palauttamaan nykyisen rivin määritetyn sarakeindeksin tiedot merkkijonona. |
10) julkinen merkkijono getString(merkkijonosarakkeen nimi): | käytetään palauttamaan nykyisen rivin määritetyn sarakkeen nimen tiedot merkkijonona. |
Esimerkki vieritettävästä tulosjoukosta
Katsotaanpa yksinkertaista esimerkkiä ResultSet-liittymästä 3. rivin tietojen hakemiseksi.
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(); }}