notatki_java_05.pdf
(
188 KB
)
Pobierz
694685102 UNPDF
Plan wykładu
1. Zaawansowane możliwości JDBC:
●
rodzaje obiektów
ResultSet
,
●
dodatkowe możliwości obiektów
ResultSet
,
●
zapytania prekompilowane,
●
wywoływanie zdalnych procedur,
●
transakcje.
2. Przegląd wybranych systemów bazodanowych:
●
HSQLDB.
1
Rodzaje obiektów ResultSet
Ze względu na dostęp do odebranych danych obiekty
ResultSet
dzielimy na:
●
TYPE_FORWARD_ONLY
– odbiór danych kolejno od pierwszego do ostatniego
rekordu,
●
TYPE_SCROLL_INSENSITIVE
– dostęp do dowolnych danych, przygotowane
wyniki nie zmieniają sie pod wpływem zmian w bazie.
●
TYPE_SCROLL_SENSITIVE
– dostęp do dowolnych danych, przygotowane wyniki
zmieniają sie pod wpływem zmian w bazie. Kolejność rekordów nie musi być stała.
Rodzaj dostępu zmieniamy metodą
setFetchDirection(int)
. Do przechodzenia
między rekordami służą metody:
next()
,
previous()
,
last()
,
first()
,
absolute()
,
relative()
.
2
Rodzaje obiektów ResultSet
Obiekty
ResultSet
mogą mieć różne możliwości zmieniana odebranych danych:
1.
CONCUR_READ_ONLY
– dane nie mogą być zmienione poprzez metody
updateXXX()
.
●
najwyższy poziom współbieżności (największa liczba użytkowników jednocześnie
operujących na danych
●
Jedyna możliwość w wersji JDBC 1.0
2.
CONCUR_UPDATABLE
– dane mogą być zmieniane.
●
zmniejszony poziom współbieżności,
●
mniejsza wydajność.
3
Rodzaje obiektów ResultSet
Connection con = DriverManager.getConnection(
"jdbc:my_subprotocol:my_subname");
Statement stmt = con.createStatement(
ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE,
ResultSet.HOLD_CURSORS_OVER_COMMIT);
stmt.setFetchSize(25);
ResultSet rs = stmt.executeQuery(
"SELECT col1, col2 FROM table1");
Obiekt
rs
udostępnia dane w dowolnej kolejności, umożliwia zmianę danych, nie
jest zamykany przy zatwierdzeniu transakcji. Do bazy danych zostaje przekazana
sugestia, aby dane odbierać w pakietach po 25 rekordów.
4
Inne operacje na obiektach ResultSet
1. Usuwanie rekordów:
rs.first();
rs.deleteRow();
2. Wstawianie rekordów:
rs.moveToInsertRow();
rs.updateObject(1, myArray);
rs.updateInt(2, 3857);
rs.updateString(3, "Mysteries");
rs.insertRow();
rs.first();
5
Plik z chomika:
Moon-Flower
Inne pliki z tego folderu:
notatki_java_10.pdf
(242 KB)
notatki_java_09.pdf
(140 KB)
notatki_java_08.pdf
(152 KB)
notatki_java_07.pdf
(488 KB)
notatki_java_06.pdf
(153 KB)
Inne foldery tego chomika:
Java EE
Zgłoś jeśli
naruszono regulamin