logo

Interfață ResultSet

Obiectul ResultSet menține un cursor care indică un rând al unui tabel. Inițial, cursorul indică înaintea primului rând.

În mod implicit, obiectul ResultSet poate fi mutat înainte numai și nu poate fi actualizat.

Dar putem face ca acest obiect să se miște înainte și înapoi în direcția trecând fie TYPE_SCROLL_INSENSITIVE, fie TYPE_SCROLL_SENSITIVE în metoda createStatement(int,int) și putem face ca acest obiect să fie actualizabil prin:

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

Metode utilizate în mod obișnuit ale interfeței ResultSet

1) public boolean next(): este folosit pentru a muta cursorul pe un rând de lângă poziția curentă.
2) public boolean anterior(): este folosit pentru a muta cursorul pe un rând anterior de la poziția curentă.
3) public boolean mai întâi (): este folosit pentru a muta cursorul pe primul rând din obiectul set de rezultate.
4) public boolean last(): este folosit pentru a muta cursorul pe ultimul rând din obiectul set de rezultate.
5) absolut boolean public (rând int): este utilizat pentru a muta cursorul la numărul de rând specificat în obiectul ResultSet.
6) relativă booleană publică (rând int): este folosit pentru a muta cursorul la numărul de rând relativ din obiectul ResultSet, acesta poate fi pozitiv sau negativ.
7) public int getInt(int columnIndex): este folosit pentru a returna datele indexului de coloană specificat al rândului curent ca int.
8) public int getInt(String columnName): este folosit pentru a returna datele cu numele de coloană specificat al rândului curent ca int.
9) public String getString(int columnIndex): este folosit pentru a returna datele indexului de coloană specificat al rândului curent ca șir.
10) public String getString(String columnName): este folosit pentru a returna datele cu numele de coloană specificat al rândului curent ca șir.

Exemplu de set de rezultate care poate fi derulat

Să vedem exemplul simplu de interfață ResultSet pentru a prelua datele de pe al treilea rând.

 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(); }}