[ Pobierz całość w formacie PDF ]
.9.5 Rezultaty i ich przetwarzanieW zależności od typu polecenia SQL, a co za tym idzie typu wyrażeniaexecuteXXX(), możliwe są różne rezultaty wykonanych operacji.MetodaexecuteUpdate() zwraca liczbę zmienionych wierszy, metoda executeQuery() zwracaobiekt typu ResultSet zawierający wszystkie rekordy (wiersze) będące wynikiemwydania polecenia SQL (SELECT).Dostęp do danych zawartych w ResultSetnastępuje poprzez odpowiedni przesuw (ResultSet.next()) po rekordach (początkowowskaznik ustawiony jest przed pierwszym elementem) oraz odczyt wartości pól zapomocą metod podanych w powyższej tabelce typu getXXX(), gdzie identyfikatorkolumny określany jest poprzez jej nazwę (typu String - ważna jest wielkość liter) lubnumer kolejny w rekordzie (np.1 kolumna, 2 kolumna,.).Informację o kolumnach obiektu ResultSet dostępne są poprzez wywołanie metodinterfejsu ResultSetMetaData, którego obiekt zwracany jest poprzez przywołaniemetody ResultSet.getMetaData.Przykładowe własności kolumn to nazwa kolumny-getColumnName(), czy typ kolumny- getColumnType().Niektóre systemyzarządzania bazami danych umożliwiają tzw.pozycjonowane zmiany i kasowaniepolegające na wprowadzaniu zmian w aktualnie dostępnym rekordzie w ResultSet.Możliwe jest wówczas wykorzystanie metod updateXXX() interfejsu ResultSet doaktualizacji danych.W celu zobrazowania techniki przetwarzania rezultatówwykonania polecenia SQL posłużmy się następującym przykładem:Przykład 8.3://DBkurs3.java:import java.sql.*;public class DBkurs3 {public static void main(String[] args) {String url = "jdbc:odbc:kurs";String username = "";String password = "";String imie, inic;int lata;9-11 Jacek Rumiński - Język JAVA Jacek Rumiński - Język JAVA  Rozdział 9Jacek Rumiński - Język JAVA Jacek Rumiński - Język JAVA try {Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");} catch (Exception e) {System.out.println("Blad ladowania sterownika JDBC/ODBC.");return;}Connection c = null;Statement s = null;try {c = DriverManager.getConnection (url,username,password);s = c.createStatement();} catch (Exception e) {System.err.println("Wystapil problem z polaczeniem do "+url);}try {ResultSet r=s.executeQuery("SELECT uczestnik, inicjaly, wiek FROM kurs");int n=0;while(r.next()){n++;imie=r.getString(1); // w pętli pobieramy daneinic=r.getString(2);lata=r.getInt(3);System.out.println("Dane rekordu nr: "+n+" to: "+imie+", "+inic+", "+lata);}s.close();} catch (Exception e) {System.err.println("Wystapil problem z wyslaniem SQL do "+url+ ": "+e.getMessage());}finally{try{ c.close(); }catch(SQLException e) {e.printStackTrace();}}//od finally}}// koniec public class DBkurs3W ten sposób pokazane zostały wszystkie trzy podstawowe zadania w pracy zbazami danych.Warto wspomnieć, że JDBC składa się faktycznie z dwóch API:jedna biblioteka standardowa dołączana do JDK (i tylko te elementy wykorzystano iomówiono powyżej) tzw.JDBC 2.0 core API oraz dodatkowa biblioteka będącarozszerzeniem czyli JDBC 2.0 extension API.Tak ujęta budowa JDBC umożliwiaciągły rozwój biblioteki przy zachowaniu standardowych narzędzi dostarczanych zpodstawowym środowiskiem Javy.9-12 [ Pobierz całość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • hanula1950.keep.pl