Łączenie z bazą danych przykładowa klasa infpolaczenie import java.sql.drivermanager; import java.sql.connection; import java.sql.
|
|
- Arkadiusz Wójcik
- 8 lat temu
- Przeglądów:
Transkrypt
1 Łączenie z bazą danych przykładowa klasa infpolaczenie import java.sql.drivermanager; import java.sql.connection; import java.sql.sqlexception; public class infpolaczenie { public static void main(string[] argv) { System.out.println("Sprawdzanie czy zostal zarejestrowany sterownik "); Class.forName("org.postgresql.Driver"); catch (ClassNotFoundException cnfe) { System.out.println("Nie moge znalezc sterownika!"); System.out.println("Wyswietlam sciezke i wychodze z programu."); cnfe.printstacktrace(); System.exit(1); Łączenie z bazą danych przykładowa klasa infpolaczenie (c.d.) System.out.println("Zarejestrowano sterownik, lacze sie..."); Connection c = null; c = DriverManager.getConnection("jdbc:postgresql://localhost/archiwum","olga", "olga"); catch (SQLException se) { System.out.println("Blad! Nie moge sie polaczyc"); se.printstacktrace(); System.exit(1); if (c!= null) System.out.println("Ustanowiono polaczenie z baza"); else System.out.println("Polacznie z baza nie powiodlo sie"); Metadane w JDBC - przykład Wykorzystanie metod interfejsu DatabaseMetaData do wypisania informacji o bazie danych: Metadane w JDBC przykład (c.d.) System.out.print("Nazwa RDBMS: "); System.out.println(dmd.getDatabaseProductName()); System.out.print("Wersja PostgreSQL: "); System.out.println(dmd.getDatabaseProductVersion()); System.out.print("Nazwa użytkownika: "); System.out.println(dmd.getUserName()); System.out.print("Główny numer poprawki sterownika: "); System.out.println(dmd.getDriverMajorVersion()); System.out.print("Poboczny numer poprawki sterownika: "); System.out.println(dmd.getDriverMinorVersion()); System.out.print("Nazwa sterownika: "); System.out.println(dmd.getDriverName()); 1
2 System.out.print("Wersja sterownika: "); System.out.println(dmd.getDriverVersion()); Metadane w JDBC przykład (c.d.) System.out.print("Adres URL sterownika JDBC: "); System.out.println(dmd.getURL()); System.out.print("Używanie plików lokalnych do zapisywania tabel: "); System.out.println(dmd.usesLocalFiles()); con.close(); Zapytania do bazy Connection con = null; Statement stm = null; ResultSet rs = null; Class.forName ("org.postgresql.driver"); con = DriverManager.getConnection("jdbc:postgresql://localhost/archiwum", "olga", "olga"); stm = con.createstatement(); //utworzenie obiektu typu Statement //wykonanie zapytania rs = stm.executequery("select imie, nazwisko, data_urodzenia,"+ "miejsce_urodzenia, adres FROM osoby"); //przetworzenie otrzymanych danych //wypisanie danych za pomocą funkcji println System.out.println(rs.getString("Nazwisko") +", " + rs.getlnt("wiek") ); Zapytania do bazy catch(sqlexception e){ //obsługa wyjątku finally{ //zamknięcie połączenia z bazą danych try{ if(null!=con.close(); con = null; catch(exception ee){ ee.printstacktrace(); Zapytania do bazy - przykład import java.sql.*; import java.util.*; public class TabelaOsoby{ final static String jdbcdriver = "org.postgresql.driver"; final static String table = "osoby"; public static void main(string[] args) { System.out.println("--- Zawartość tabeli osoby---"); 2
3 Class.forName(jdbcDriver); Kody do wykładu Programowanie baz danych JDBC Maria Dems; Zapytania do bazy - przykład (c.d.) Connection con = DriverManager.getConnection("jdbc:postgresql://localhost/archiwum", "olga", "olga"); Statement stm = con.createstatement(); ResultSet rs = stm.executequery("select * FROM "+ table); ResultSetMetaData rsmd = rs.getmetadata(); int columncount = rsmd.getcolumncount(); for(int kol = 1; kol <= columncount; kol++) { System.out.print(rsmd.getColumnLabel(kol)); System.out.print(" (" + rsmd.getcolumntypename(kol)+")"); if(kol < columncount) System.out.print(", "); Zapytania do bazy - przykład (c.d.) System.out.println(); while(rs.next()) { for(int col = 1; col <= columncount; col++) { System.out.print(rs.getString(col)); if(col < columncount) System.out.print(", "); System.out.println(); rs.close(); stm.close(); con.close(); catch (ClassNotFoundException e) { System.out.println("Nie można załadować sterownika"); catch (SQLException e) { System.out.println("Wyjątek SQL : " + e.getmessage()); Zapytania do bazy Connection con = null; Statement stm = null; ResultSet rs = null; Class.forName ("org.postgresql.driver"); con = DriverManager.getConnection("jdbc:postgresql://localhost/archiwum", "olga", "olga"); stm = con.createstatement(); //utworzenie obiektu typu Statement //wykonanie zapytania rs = stm.executequery("select imie, nazwisko, data_urodzenia,"+ "miejsce_urodzenia, adres 3
4 FROM osoby"); //przetworzenie otrzymanych danych //wypisanie danych za pomocą funkcji println System.out.println(rs.getString("Nazwisko") +", " + rs.getlnt("wiek") ); Przewijanie zbioru wyników w JDBC Możliwe do ustawienia wartości parametrów int resultsettype, oraz int resultsetconcurrency Aby uzyskać zestaw wyników zapytania z przewijaniem w obie strony, należy zadeklarować instrukcję: // utworzenie obiektu ResultSet z przewijaniem typu insensitive Statement stm = connection.createstatement ( // zestaw wyników z przewijaniem ResultSet.TYPE_SCROLL_INSENSITIVE, // zestaw wyników tylko do odczytu. ResultSet.CONCUR_READ_ONLY); // utworzenie obiektu ResultSet z przewijaniem typu sensitive stm = connection.createstatement ( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); catch (SQLException e) { Zapytania do bazy Connection con = null; Statement stm = null; ResultSet rs = null; Class.forName ("org.postgresql.driver"); con = DriverManager.getConnection("jdbc:postgresql://localhost/archiwum", "olga", "olga"); stm = con.createstatement(); //utworzenie obiektu typu Statement //wykonanie zapytania rs = stm.executequery("select imie, nazwisko, data_urodzenia,"+ "miejsce_urodzenia, adres FROM osoby"); //przetworzenie otrzymanych danych //wypisanie danych za pomocą funkcji println System.out.println(rs.getString("Nazwisko") +", " + rs.getlnt("wiek") ); Aby uzyskać zestaw wyników zapytania z przewijaniem w obie strony, należy zadeklarować instrukcję: 4
5 // utworzenie obiektu ResultSet z przewijaniem typu insensitive Statement stm = connection.createstatement ( // zestaw wyników z przewijaniem ResultSet.TYPE_SCROLL_INSENSITIVE, // zestaw wyników tylko do odczytu. ResultSet.CONCUR_READ_ONLY); // utworzenie obiektu ResultSet z przewijaniem typu sensitive stm = connection.createstatement ( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); catch (SQLException e) { Aktualizowanie zbioru wyników w JDBC Przykładowo, w celu zmiany danych w bazie można napisać kod: String query = "SELECT * FROM osoby"; ResultSet rs = stm.executequery(query); if( ){ String nr = String adres = rs.getstring("adres") + nr;.. rs.updatestring ("adres", adres) ; rs.updaterow(); Zapytania do bazy Connection con = null; Statement stm = null; ResultSet rs = null; Class.forName ("org.postgresql.driver"); con = DriverManager.getConnection("jdbc:postgresql://localhost/archiwum", "olga", "olga"); stm = con.createstatement(); //utworzenie obiektu typu Statement //wykonanie zapytania rs = stm.executequery("select imie, nazwisko, data_urodzenia,"+ "miejsce_urodzenia, adres FROM osoby"); //przetworzenie otrzymanych danych //wypisanie danych za pomocą funkcji println System.out.println(rs.getString("Nazwisko") +", " + rs.getlnt("wiek") ); Aby uzyskać zestaw wyników zapytania z przewijaniem w obie strony, należy zadeklarować instrukcję: // utworzenie obiektu ResultSet z przewijaniem typu insensitive 5
6 Statement stm = connection.createstatement ( // zestaw wyników z przewijaniem ResultSet.TYPE_SCROLL_INSENSITIVE, // zestaw wyników tylko do odczytu. ResultSet.CONCUR_READ_ONLY); // utworzenie obiektu ResultSet z przewijaniem typu sensitive stm = connection.createstatement ( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); catch (SQLException e) { Aktualizowanie zbioru wyników w JDBC Przykładowo, w celu zmiany danych w bazie można napisać kod: String query = "SELECT * FROM osoby"; ResultSet rs = stm.executequery(query); if( ){ String nr = String adres = rs.getstring("adres") + nr;.. rs.updatestring ("adres", adres) ; rs.updaterow(); Operacje na zbiorze wyników w JDBC Pokazuje to przykład: Zapytania do bazy Connection con = null; Statement stm = null; ResultSet rs = null; Class.forName ("org.postgresql.driver"); con = DriverManager.getConnection("jdbc:postgresql://localhost/archiwum", "olga", "olga"); stm = con.createstatement(); //utworzenie obiektu typu Statement //wykonanie zapytania rs = stm.executequery("select imie, nazwisko, data_urodzenia,"+ "miejsce_urodzenia, adres FROM osoby"); //przetworzenie otrzymanych danych //wypisanie danych za pomocą funkcji println System.out.println(rs.getString("Nazwisko") +", " + rs.getlnt("wiek") ); Aby uzyskać zestaw wyników zapytania z przewijaniem w obie strony, należy zadeklarować instrukcję: 6
7 // utworzenie obiektu ResultSet z przewijaniem typu insensitive Statement stm = connection.createstatement ( // zestaw wyników z przewijaniem ResultSet.TYPE_SCROLL_INSENSITIVE, // zestaw wyników tylko do odczytu. ResultSet.CONCUR_READ_ONLY); // utworzenie obiektu ResultSet z przewijaniem typu sensitive stm = connection.createstatement ( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); catch (SQLException e) { Aktualizowanie zbioru wyników w JDBC Przykładowo, w celu zmiany danych w bazie można napisać kod: String query = "SELECT * FROM osoby"; ResultSet rs = stm.executequery(query); if( ){ String nr = String adres = rs.getstring("adres") + nr;.. rs.updatestring ("adres", adres) ; rs.updaterow(); Operacje na zbiorze wyników w JDBC Zasady użycia metod: executeouery(), executeupdate() i execute(), umożliwiających wykonanie poleceń SQL na rzecz obiektu Statement: Ten sam obiekt Statement może zostać wielokrotnie wykorzystany do wykonania różnych instrukcji SQL. Przykładowy kod, wstawiający do tabeli dwa rekordy za pomocą dwóch obiektów ResultSet ma postać: import java.sql.*; import java.io.*; public class DodawanieRekordow { public static DodawanieRekordow dodawanierekordow; protected Connection connection = null; public DodawanieRekordow(){ try{ connect(); writerecord(); close(); 7
8 catch(sqlexception e){ System.out.println("Błąd: " + e); while((e = e.getnextexception())!= null){ public static void main(string args[]){ dodawanierekordow = new DodawanieRekordow(); public void connect()throws SQLException{ try{ Class.forName("org.postgresql.Driver"); catch(classnotfoundexception e){ System.out.println("Błąd załadownaia sterownika: " + e); System.exit(-1); connection = DriverManager.getConnection("jdbc:postgresql://localhost/archiwum", "olga", "olga"); System.out.println("\nPołączenie zostało nawiązane\n"); public void close()throws SQLException{ connection.close(); System.out.println("\nPołączenie zostało zamknięte\n"); public void writerecord()throws SQLException{ Statement statement = connection.createstatement(); int liczba = statement.executeupdate("insert INTO osoby VALUES (1,'Olga', Kowalska', '01/01/1980', 'Warszawa', Nowa 27/11')"); System.out.println("Liczba dodanych rekordów: " + liczba); Operacje na zbiorze wyników w JDBC //połączenie jest nawiązane i utworzony obiekt Statement statement String sql; //do typu String przypisano zmienną reprezentującą polecenia SQL //... //wykonanie metody execute() boolean b = statement.execute(sql); if(b){ //sprawdzamy zwróconą wartość b == true //obsługa danych ResultSet rs = statement.getresultset(); 8
9 //... System.out.println(rs.getlnt("nazwa_pola")); // inna obsługa danych //... else{ // zwrócona wartość b == false //sprawdzenie ilości zmienionych rekordów int liczba = statement.getupdatecount(); System.out.println("Liczba zmienionych rekordów: "+ liczba); //zamknięcie połączenia ResultSet rs = stm.executequery(" "); //. ResultSetMetaData rsmd = rs.getmetadata(); Connection con DriverManager.getConnection("jdbc:postgresql://localhost/ archiwum","olga", "olga"); void wypisz(string args){ System.out.println(args); String query = "SELECT imie, nazwisko, adres FROM osoby"; try{ Statement stm = con.createstatement(); ResultSet rs = stm.executequery(query); ResultSetMetaData rsmd = rs.getmetadata(); int liczba = rsmd.getcolumncount(); //liczba kolumn for(int i = 1; i<=liczba; i++) { wypisz('\n' rsmd.getcolumnname(i)); //nazwa wypisz(' ' rsmd.getcolumndisplaysize(i)); //szerokość wypisz(' ' rsmd.getcolumnclassname(i)); //klasa Javy wypisz(' ' rsmd.getcolumntype(i)); //typ SQL wypisz(' ' rsmd.getcolumntypename(i)); //typ RDBMS stm.close(); con.close(); catch(sqlexception e){ System.out.println(e.getMessage()); 9
10 //połączenie zostało już nawiązane przez obiekt Connection con try{ con.setautocommit(false); //wyłączenie trybu autocommit Statement stm = con.createstatement(); //utworzenie ob. Statement //wywołanie polecenia SQL stm.executeupdate("update osoby"+ SET adres = Nowa 27 + "WHERE Nazwisko LIKE '%ska';"); stm.executeupdate("delete FROM osoby"+ "WHERE adres = Nowa 27'"); con.commit(); //zatwierdzenie transakcji w przypadku braku błędów catch(exception e){ con.rollback(); //odwołanie transakcji przy wystąpieniu błędów //zamknięcie połączenia Connection con = DriverManager.getConnection ("jdbc:postgresql://localhost/archiwum","olga", "olga"); Statement stm = con.createstatement(); Savepoint sp; stm.executeupdate(("insert INTO osoby VALUES (1,'Olga', Kowalska', '01/01/1980', 'Warszawa', Nowa 27/11')"); sp = con.setsavepoint(safety); stm.executeupdate("insert INTO akta_studenckie (id_osoby, nr_albumu) VALUES (2, 22780)"); try{ stm.executeupdate("update osoby SET akta_studenckie = 2 WHERE id = 1"); catch(sqlexception e){ con.rollback(sp); con.commit(); Transakcje w JDBC - przykładowy program import java.sql.* ; public class Transakcja1 { public static void main(string [ ] args) throws SQLException { int kod_bledu ; Connection conn = null ; //Załadowanie i rejestracja sterownika Oracle DriverManager.registerDriver (new oracle.jdbc.driver.oracledriver( )); //ustanawiamy połączenie conn = DriverManager.getConnection ( jdbc:oracle:thin:@training: 1521:Oracle, oratest, oratest ) ; Transakcje w JDBC - przykładowy program //Wyłączamy tryb automatycznego zatwierdzania conn = setautocommit( false) ; 10
11 String sql1 = SELECT nr FROM tabela WHERE nr=? ; String sql2 = INSERT INTO tabela VALUES (?.?.?) ; PreparedStatement pstmt1 = conn. preparestatement (sql1) ; PreparedStatement pstmt2 = conn. preparestatement (sql2) ; pstmt1.setint(1, 9999); ResultSet rset = pstmt1.executequery( ) ; if (rset.next( ) ) { System.out.println( nr 9999 istnieje ) ; rset.close ( ) ; else { pstmt2.setint(1, 9999); pstmt2.setstring(2, Adam ) ; pstmt2.setstring(3, Kowalski ) ; Transakcje w JDBC - przykładowy program pstmt1.close ( ) ; pstmt2.close( ) ; //zatwierdzamy efekt instrukcji INSERT conn.commit( ) ; conn.close( ) catch (SQLException e) //wycofujemy zmiany, aby anulować efekt instrukcji INSERT { conn. Rollback ( ) ; kod_bledu = e.geterrorcode( ) ; System.err.println(kod_bledu + e.getmessage( ) ) ; Connection con = null; try{ //wywołanie funkcji powodujących wyjątek: // połączenie z bazą danych, polecenia SQL catch(sqlexception e){ //przechwycenie wyjątku i wyświetlenie go na konsoli System.out.println(e.getMessage()); //pobranie referencji do kolejnych wyjątków, //do momentu otrzymania wartości null while(null!=(e=e.getnextexception()){ //wyświetlenie informacji o kolejnych wyjątkach System.out.println(e.getMessage()); Connection con = null; try{ 11
12 //połączenie i wykonanie transakcji catch(sqlexception e) { //obsługa wyjątku final { if(con!= null){ con.close(); catch(sqlexception e){ Mapowanie typów danych w JDBC Przykład wywołania funkcji wyzej z konwertowaniem dostarczonych argumentów znakowych na wielkie litery //utworzono i zainicjowano obiekt Connection con //utworzenie obiektu CallableStatement, z podaniem w argumencie // funkcji 'preparecall' składni wywołania funkcji przechowywanej CallableStatement wyzej = con.preparecall("{?=call wyzej(?)"); //rejestracja par. wyjściowego funkcji którym jest znacznik "?" wyzej.registeroutparameter(1, Types.VARCHAR); //przypisanie pierwszemu znacznikowi '?' wartości wyzej.setstring(2, "Konwertuj z małych liter na duże"); //wywołanie wykonania funkcji przechowywanej wyzej.execute(); String wyzejpobierz = wyzej.getstring(1); wyzej.close(); Przykład zwracania wartości funkcji jako refcursor //ustawiono wywołanie funkcji. Statement stm = con.createstatement(); stm.execute("create OR REPLACE FUNCTION refkursorfunkcja()" +"RETURNS refcursor AS DECLARE kursor refcursor ; " + " BEGIN OPEN kursor FOR SELECT 1 UNION SELECT 2; " + " RETURN kursor ; END ;' language plpgsql"); stm.close(); //należy być wewnątrz transakcji dla kursorów, by pracować z nimi con.setautocommit(false); //wywołanie procedury CallableStatement proc = con.preparecall("{?=call refkursorfunkcja()"); proc.registeroutparameter(1, Types.Other); proc.execute(); ResultSet rs = (ResultSet)proc.getObject(1); while (rs.next()) { //działania na rezultatach rs.close(); 12
13 proc.close(); Kody do wykładu Programowanie baz danych JDBC Maria Dems; Przykład zwracania wartości funkcji jako typ danych SETOF Statement stm = con.createstatement(); stm.execute("create OR REPLACE FUNCTION setoffunkcja()" +"RETURNS SETOF int AS 'SELECT 1 UNION SELECT 2; ' language sql"); ResultSet rs = stm.executequery("select * FROM setoffunkcja()"); while (rs.next()) { // jakies operacje na danych rs.close(); stm.close(); Funkcje przechowywane w JDBC Wartości zwracane przez refcursor można potraktować jako nazwę kursora; w tym celu należy użyć metody getstring() obiektu ResultSet. W kursorze można również używać takich poleceń jak FETCH i MOVE. Obsługa dużych obiektów w JDBC JDBC umożliwia obsługę stosunkowo dużych obiektów za pomocą metod getbytes() i getstring(), należących do interfejsu java.sql.resultset. Często jednak znajdujące się w bazie obiekty mogą być tak duże, że zastosowanie powyższych metod nie będzie możliwe. JDBC udostępnia metody operujące na strumieniach: getbinarystream(), getasciistream(), getunicodestream() setbinarystream(), setasciistream() setunicodestream(). W celu zapisania w bazie danych znajdującego się na dysku twardym zdjęcia należy napisać kod: //utworzono połączenie, stworzono i zainicjowano obiekt // Connection con i utworzono obiekt File dla pliku zdjecia File zdjecie = new File("olga.gif"); int wielkoscpliku = zdjecie.length(); //odczytanie wielkości pliku //utworzenie strumienia wejściowego z pliku InputStream is = new FileInputStream(zdjecie); //przygotowanie poleceń wstawiania do bazy PreparedStatement pstm = 13
14 con.preparestatement("update PORTRETY SET zdjecie =?" + "WHERE nazwisko = Kowalska'"); //przypisanie strumienia wejściowego z pliku //do strumienia danych, przesyłanych do bazy pstm.setbinarystream(1, is, wielkoscpliku); pstm.execute(); //wywołanie wykonania polecenia W celu uzyskania pliku z bazy danych należy napisać kod: //utworzono połączenie, stworzono i zainicjowano obiekt // Connection con i utworzono obiekt Statement w postaci: Statement stm = con.createstatement(resultset.type_scroll_insensitive, ResultSet.CONCUR_READ_ONLY); String query = "SELECT zdjecia FROM osoby" + //utworzenie polecenia SQL "WHERE Nazwisko = Kowalska'"; //wykonanie zapytania- otrzymanie referencji do obiektu ResultSet ResultSet rs = stm.executequery(query); byte() bufor = new byte[2048]; //utworzenie buforu dla danych wypisanych z bazy //ustawienie kursora obiektu ResultSet przed pierwszym rekordem rs.beforefirst(); //przypisanie do zmiennej is strumienia wejściowego z bazy InputStream is = rs.getbinarystream("zdjecie"); int rozmiar = 0; //odczytanie danych ze strumienia while((rozmiar = in.read(bufor)) > 0){ //... //operacja na danych pobranych z bazy Sposób obsługi struktur w JDBC ilustruje przykład: import java.sql.*; public Class DodatkoweInformacje implements SQLData { //deklarowanie zmiennej określającej nazwę struktury private String sql_type; //deklarowanie zmiennych, odpowiadających polom struktury public int wzrost; public String dodatkowe_dane; //konstruktor bez paramertów, inicjujący obiekt przez JDBC public DodatkoweInformacje(){ //drugi konstruktor, niezbędny do utworzenia i zapisu obiektu do bazy public DodatkoweInformacje(String sql_type, int wzrost, String dodatkowe_dane) { this.sql_type = sql_type; this.wzrost = wzrost; this.dodatkowe_dane = dodatkowe_dane; 14
15 //implementowanie funkcji z interfejsu SQLData zwracającej sql_type public String getsqltypename() throws SQLException{ return sql_type; public void readsql(sqlinput stream, String typename) throws SQLException{ //podstawienie do zmiennej sql_type wartości przekazanej //w argumencie typename sql_type = typename; //odczytanie ze strumienia wartości pól struktury //w kolejności określonej w definicji struktury w bazie danych wzrost = stream.readlnt(); dodatkowe_dane = stream.readstring(); public void writesql(sqloutput stream) throws SQLException{ //zapisanie do strumienia wartości zmiennych obiektu //w kolejności określonej w definicji struktury w bazie danych stream.writeint(wzrost); stream.writestring(dodatkowe_dane); //nawiązano połączenie z bazą danych oraz stworzono // i zainicjowano obiekt Connection con //pobranie referencji do obiektu Map zawierającego zmapowane typy //SQL do klas Javy java.util.map map = con.gettypemap(); //mapowanie struktury do zaimplementowanej klasy map.put("informacje", Class.forName("DodatkoweInformacje")); //utworzenie obiektu Statement Statement stm = con.createstatement(resultset.type_scroll_insensitive, RsultSet.CONCUR_READ_ONLY) //wykonanie zapytania ResultSet rs = stm.executequery("select informacje FROM osoby +"WHERE nazwisko = Kowalska'"); //w tabeli jest jeden taki rekord, więc rezultat zapytania został //zapisany dla pierwszego wyniku rs.first(); //pobranie obieku DodatkoweInformacje inf = (DodatkoweInformacje)rs.getObject("informacje"); //przetwarzanie zwróconych danych System.out.println("Waga: "+inf.waga); System.out.println("dodatkowe_dane: "+inf. dodatkowe_dane); Struktury w JDBC Sposób dodania nowych wartości do bazy danych do tabeli osoby z wykorzystaniem uprzednio zdefiniowanego obiektu DodatkoweInformacje ilustruje kod: 15
16 //utworzenie obiektu PreparedStatement i przypisanie do niego //polecenia SQL modyfikującego dane w kolumnie informacje, jeśli //zostanie spełniony warunek WHERE PreparedStatement pstm = con.preparestatement("update osoby " + "SET informacje =?"+ "WHERE nazwisko = Kowalska'"); //utworzenie obiektu klasy DodatkoweInformacje DodatkoweInformacje inf = new DodatkoweInformacje(196, "Polka, dwie specjalizacje: informatyka, elektrotechnika"); //przypisanie zmiennej inf do znacznika? pstm.setobject(1, daneos, Types.STRUCT); //wykonanie polecenia UPDATE pstm.execute(); //... Wywoływanie procedur przechowywanych Javy w JDBC - przykładowy program import java.sql.* ; public class JavaProcPrzyklad { public static void main(string [ ] args) throws SQLException { int kod_bledu ; Connection conn = null ; //Załadowanie i rejestracja sterownika Oracle DriverManager.registerDriver (new oracle.jdbc.driver.oracledriver( )); //ustanawiamy połaczenie conn = DriverManager.getConnection ( jdbc:oracle:thin:@training: 1521:Oracle, oratest, oratest ) ; //Procedura usuwa rekordy z tabeli, w których nr = 20 int i_nr = 20 ; CallableStatement pstmt = conn.preparecall( {call proc_nazwa (?) ) ; pstmt.setint (1, i_nr) ; pstmt.executeupdate ( ) ; pstmt.close ( ) ; conn.close( ) catch (SQLException e) { kod_bledu = e.geterrorcode( ) ; System.err.println(kod_bledu + e.getmessage( ) ) ; conn.close( ) ; 16
Połączenie z bazą danych
Połączenie z bazą danych ODBC i JDBC - przykłady w języku Java Standard ODBC Stworzony przez Microsoft Dostępny w Windows (są także bibliotek Linux'owe) Pozwala na dostęp do źródeł danych Programowanie
Bardziej szczegółowoAplikacje bazodanowe. dr inż. Arkadiusz Mirakowski
Aplikacje bazodanowe dr inż. Arkadiusz Mirakowski Plan prezentacji interfejs ODBC interfejs JDBC rodzaje sterowników JDBC niezbędne biblioteki interfejsu JDBC instalacja i konfiguracja sterownika JDBC
Bardziej szczegółowoJDBC (Java Database Connectivity vit )
1 JDBC (Java Database Connectivity) Marek Wojciechowski Czym jest JDBC? 2 JDBC jest standardowym interfejsem do współpracy aplikacji Java z relacyjną bazą danych JDBC definiuje standardowe interfejsy interfejsy
Bardziej szczegółowoJAVA I BAZY DANYCH. MATERIAŁY: http://docs.oracle.com/javase/tutorial/jdbc/basics/index.html
JAVA I BAZY DANYCH ZAGADNIENIA: wprowadzenie; JDBC; komunikacja z bazą danych; HSQLDB. MATERIAŁY: http://docs.oracle.com/javase/tutorial/jdbc/basics/index.html http://th-www.if.uj.edu.pl/zfs/ciesla/ JĘZYK
Bardziej szczegółowoJAVA bazy danych. na bazie: Język Java - Podstawy Programowania - Jacek Rumiński
JAVA bazy danych na bazie: Język Java - Podstawy Programowania - Jacek Rumiński Plan wykładu Sposoby połączenia z bazą danych Sterowniki JDBC Połączenie z bazą danych poprzez JDBC Język SQL (Structured
Bardziej szczegółowoJava i jej wykorzystanie do tworzenia dynamicznych aplikacji Webowych
Java i jej wykorzystanie do tworzenia dynamicznych aplikacji Webowych Zadanie do wykonania na następny tydzień: Przedstawić aplikację napisaną w JSP realizującą analogiczne zadania jak pierwsza aplikacja
Bardziej szczegółowoProgramowanie w języku Java. Bazy danych SQLite w Javie
Programowanie w języku Java Bazy danych SQLite w Javie Co to jest SQLite SQLite to bezserwerowa, nie wymagająca konfiguracji relacyjna baza danych. Znajduje szerokie zastosowanie np.. w systemie android
Bardziej szczegółowoTypy sterowników. Rozdział 21 JDBC. Podstawowe kroki aplikacji. Historia. Program napisany w języku Java JDBC API. Menadżer sterowników JDBC
Typy sterowników Program napisany w języku Java Rozdział JDBC JDBC API Menadżer sterowników JDBC Typ Typ Typ Typ Wprowadzanie do JDBC, kursory zwykłe, kursory przewijane, obsługa błędów, przetwarzanie
Bardziej szczegółowoBazy danych wykład dwunasty
Bazy danych wykład dwunasty Interfejs do połaczeń z baza danych Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa danych 1 / 29 Zajmiemy się mechanizmami pozwalajacymi połaczyć się
Bardziej szczegółowoJDBC. Plan ćwiczenia. Wywoływanie poleceń SQL z języków programowania. Plan ćwiczenia cd. Wprowadzenie do laboratorium
Bazy Danych JDBC Wywoływanie poleceń SQL z języków programowania. Plan ćwiczenia Wprowadzenie do laboratorium. Nawiązywanie i zamykanie połączeń. Wykonywanie zapytań. Wykonywanie aktualizacji. Zarządzanie
Bardziej szczegółowoWprowadzenie do JDBC z wykorzystaniem bazy H2
Wprowadzenie do JDBC z wykorzystaniem bazy H2 JDBC (ang. Java DataBase Connectivity). Biblioteka stanowiąca interfejs umożliwiający aplikacjom napisanym w języku Java porozumiewać się z bazami danych za
Bardziej szczegółowoProgramowanie komputerów. Wykład 10: Dostęp do baz danych z poziomu aplikacji Java. (JDBC Database Access)
Programowanie komputerów Wykład 10: Dostęp do baz danych z poziomu aplikacji Java (JDBC Database Access) Relacyjne bazy danych Baza danych to zbiór danych powiązanych ze sobą pewnymi relacjami. System
Bardziej szczegółowoRozdział 9 Obsługa baz danych w języku Java
Rozdział 9 Obsługa baz danych w języku Java 9.1 Obsługa baz danych w Javie - pakiet SQL 9.2 Utworzenie połączenia z bazą danych 9.3 Sterowniki 9.4 Wysłanie polecenia SQL 9.5 Rezultaty i ich przetwarzanie
Bardziej szczegółowoPodejście obiektowe do relacyjnych baz danych Hibernate.
Podejście obiektowe do relacyjnych baz danych Hibernate. Plan wykładu Czym jest Hibernate? Jakie są zalety pracy z Hibernate? Jak skonfigurować Hibernate? Jak korzystać z Hibernate? Praktyczne przykłady
Bardziej szczegółowoJava Database Connectivity
Java Database Connectivity Celem ćwiczenia jest zbudowanie kilku prostych serwletów z użyciem technologii JDBC. Podczas ćwiczenia zbudowane zostaną serwlety ilustrujące podstawowe techniki łączenia się
Bardziej szczegółowoAplikacje Internetowe
Aplikacje Internetowe Łączenie z bazą danych Podstawy Klient Serwer Sterownik Własne API (Application Programmer Interface) Łączenie z bazą danych Sterownik Protokół komunikacyjny Adres serwera Port nasłuchowy
Bardziej szczegółowoJava Zadanie 1. Aby poprawnie uruchomić aplikację desktopową, należy zaimplementować główną metodę zapewniającą punkt wejścia do programu.
Wstęp Java Zadanie Celem laboratorium jest zapoznanie się z podstawami platformy oraz języka Java. W ramach zadania należy przygotować aplikację zarządzania notatkami użytkownika obsługiwaną z konsoli.
Bardziej szczegółowoJDBC - Obsługa baz danych w języku Java
JDBC - Obsługa baz danych w języku Java JDBC (Java Database Conectiviti) jest interfejsem pozwalającym połączyć aplikację Javy z zewnętrzną bazą danych za pomocą odpowiednich sterowników. Dużą zaletą JDBC
Bardziej szczegółowoPL/SQL. Zaawansowane tematy PL/SQL
PL/SQL Zaawansowane tematy PL/SQL Cele Poznanie złożonych i referencyjnych typów danych Poznanie konstrukcji kursora Poznanie kodu składowanego Poznanie procedur i funkcji 2 Złożone typy danych RECORD
Bardziej szczegółowoBartosz Jachnik - Kino
Bartosz Jachnik - Kino I. Opis bazy Prezentowana baza danych stworzona została na potrzeby prowadzenia kina. Zawiera ona 8 tabel, które opisują filmy grane w danym okresie w kinie, wraz ze szczegółowym
Bardziej szczegółowoPlan wykładu. Dostęp do bazy danych. Architektura JDBC. Dostęp do baz danych z aplikacji Java EE
1 Plan wykładu 2 Dostęp do bazy danych Dostęp do baz danych w aplikacjach Java EE JDBC Źródła danych część I: JDBC i źródła danych Dostęp do baz danych z aplikacji Java EE Architektura JDBC Programowane
Bardziej szczegółowoMetody dostępu do danych
Metody dostępu do danych dr inż. Grzegorz Michalski Na podstawie wykładów dra inż. Juliusza Mikody Metody dostępu do danych JDBC - Java Database Connectivity JDO - Java Data Object ORM - Object-Relational
Bardziej szczegółowoPODSTAWY BAZ DANYCH 13. PL/SQL
PODSTAWY BAZ DANYCH 13. PL/SQL 1 Wprowadzenie do języka PL/SQL Język PL/SQL - rozszerzenie SQL o elementy programowania proceduralnego. Możliwość wykorzystywania: zmiennych i stałych, instrukcji sterujących
Bardziej szczegółowoMarcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych
Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych http://www.mini.pw.edu.pl/~lucknerm Utworzenie tabeli w Oracle Utworzenie użytkownika Utworzenie połączenia w NetBeans Utworzenie
Bardziej szczegółowoJava Database Connectivity
1 Java Database Connectivity Java Database Connectivity (JDBC) to specyfikacja określająca zbiór klas i interfejsów napisanych w Javie, które mogą być wykorzystane przez programistów tworzących oprogramowanie
Bardziej szczegółowoWieloplatformowe aplikacje sieciowe. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak
Wieloplatformowe aplikacje sieciowe dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak SOAP Serwer: Axis2 / Java Wbudowany komponent nasłuchujący, (Apache / Tomcat) Client Axis2 klient / XML Jeżyk programowania:
Bardziej szczegółowoInformatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC.
Informatyka I Programowanie aplikacji bazodanowych w języku Java. Standard JDBC. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 Standard JDBC Java DataBase Connectivity
Bardziej szczegółowoDB+frontend Inne języki H2. Bazy Danych i Systemy informacyjne Wykład 9. Piotr Syga
Bazy Danych i Systemy informacyjne Wykład 9 Piotr Syga 30.11.2018 API Przykłady API ODBC JDBC OLEDB ADO.NET data provider API Funkcjonalności Komponenty Główne komponenty odpowiadające za komunikację API/data
Bardziej szczegółowoProgramowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika
Programowanie w SQL procedury i funkcje UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika 1. Funkcje o wartościach skalarnych ang. scalar valued
Bardziej szczegółowoKurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016
Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,
Bardziej szczegółowoPHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych:
PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł mysqli ma dwa interfejsy: proceduralny i obiektowy) PostgreSQL Oracle MS
Bardziej szczegółowoInterfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej
Programowanie obiektowe Interfejsy Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Interfejsy Autor: Paweł Rogaliński Instytut Informatyki,
Bardziej szczegółowoakademia androida Składowanie danych część VI
akademia androida Składowanie danych część VI agenda 1. SharedPreferences. 2. Pamięć wewnętrzna i karta SD. 3. Pliki w katalogach /res/raw i /res/xml. 4. Baza danych SQLite. 5. Zadanie. 1. SharedPreferences.
Bardziej szczegółowoprzygotował: Pawel@Kasprowski.pl Bazy danych Paweł Kasprowski pawel@kasprowski.pl Wersja 2006Z
Bazy danych Paweł Kasprowski pawel@kasprowski.pl Łączenie z bazą danych Sterownik Protokół komunikacyjny Adres serwera Port nasłuchowy Przesłanie zapytania SQL Odebranie rezultatów Pierwszy przykład JDBC
Bardziej szczegółowoPodstawy otwartych języków programowania Java Database Connectivity (JDBC)
Podstawy otwartych języków programowania Java Database Connectivity (JDBC) Wiktor Wandachowicz Treść wykładu Przypomnienie terminów bazodanowych Architektura JDBC Schemat działania przy dostępie do danych
Bardziej szczegółowoPodstawy i języki programowania
Podstawy i języki programowania Laboratorium 8 - wprowadzenie do obsługi plików tekstowych i wyjątków mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 11 grudnia 2017 1 / 34 mgr inż. Krzysztof
Bardziej szczegółowoBloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
Bardziej szczegółowoInformatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java
Informatyka I Standard JDBC Programowanie aplikacji bazodanowych w języku Java dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Standard JDBC Java DataBase Connectivity uniwersalny
Bardziej szczegółowoPołączenia między bazami danych i programem w języku Java część 2
Połączenia między bazami danych i programem w języku Java część 2 import java.sql.*; import javax.swing.*; import java.util.*; import javax.swing.*; class Okno extends JFrame JLabel elista= new JLabel
Bardziej szczegółowoFunkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u
Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u będziemy używać w taki sam sposób, jak wbudowanych funkcji
Bardziej szczegółowow PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze
w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze Cechy bloków nazwanych: w postaci skompilowanej trwale przechowywane na serwerze wraz z danymi wykonywane na żądanie użytkownika lub w
Bardziej szczegółowoDECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ];
Braki w SQL obsługi zdarzeń i sytuacji wyjątkowych funkcji i procedur użytkownika definiowania złożonych ograniczeń integralnościowych Proceduralny SQL Transact- SQL używany przez Microsoft SQL Server
Bardziej szczegółowoMateriały. Technologie baz danych. Plan wykładu Kursory. Wykład 5: Kursory jawne. Podprogramy. Kursory jawne. Kursory niejawne
Materiały dostępne są na stronie: Materiały Technologie baz danych aragorn.pb.bialystok.pl/~gkret Wykład 5: Kursory jawne. Podprogramy. Małgorzata Krętowska Wydział Informatyki Politechnika Białostocka
Bardziej szczegółowoAplikacje WWW - laboratorium
Aplikacje WWW - laboratorium Java Database Connectivity Celem ćwiczenia jest zbudowanie kilku prostych serwletów z użyciem technologii JDBC. Podczas ćwiczenia zbudowane zostaną serwlety ilustrujące podstawowe
Bardziej szczegółowoProtokół JDBC współpraca z relacyjnymi bazami danych lab4. Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych
Protokół JDBC współpraca z relacyjnymi bazami danych lab4 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych Zadanie1 Połączenie z bazą danych travel systemu bazodanowego Derby (metoda void
Bardziej szczegółowoProcedury składowane. Funkcje vs. procedury Funkcja. Procedura. zazwyczaj ma parametry tylko typu IN; można wywoływać z poziomu
Procedury składowane Kolejnym typem programu języka PL/SQL są procedury składowane. Procedury mogą posiadać parametry typu IN, OUT lub IN OUT. Umożliwiają wykonanie operacji na danych w bazie, mogą też
Bardziej szczegółowoWykład 4: Klasy i Metody
Wykład 4: Klasy i Metody Klasa Podstawa języka. Każde pojęcie które chcemy opisać w języku musi być zawarte w definicji klasy. Klasa definiuje nowy typ danych, których wartościami są obiekty: klasa to
Bardziej szczegółowoProtokół JDBC współpraca z relacyjnymi bazami danych lab3
Protokół JDBC współpraca z relacyjnymi bazami danych lab3 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych JPA, lab3 Zofia Kruczkiewicz 1 Zadanie1 Połączenie z bazą danych Sample systemu
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 2 Kusory Wprowadzenie Kursory użytkownika Kursory domyślne Zmienne kursora Wyrażenia kursora - 2 - Wprowadzenie Co to jest kursor?
Bardziej szczegółowoDostęp do baz danych z serwisu www - PHP. Wydział Fizyki i Informatyki Stosowanej Joanna Paszkowska, 4 rok FK
Dostęp do baz danych z serwisu www - PHP Wydział Fizyki i Informatyki Stosowanej Joanna Paszkowska, 4 rok FK Bazy Danych I, 8 Grudzień 2009 Plan Trochę teorii Uwagi techniczne Ćwiczenia Pytania Trójwarstwowy
Bardziej szczegółowoWzorce logiki dziedziny
Wzorce logiki dziedziny 1. Wzorce logiki dziedziny skrypt transakcji (Transaction Script), brama tabeli (Table Data Gateway), model dziedziny (Domain model), strategia (Strategy), moduł tabeli (Table Module),
Bardziej szczegółowoPakiety podprogramów Dynamiczny SQL
Pakiety podprogramów Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL 1 Pakiety Pakiet (ang. package)
Bardziej szczegółowoProgramowanie w języku Java
Programowanie w języku Java Wykład 4: Programowanie rozproszone: TCP/IP, URL. Programowanie sieciowe w Javie proste programowanie sieciowe (java.net) na poziomie UDP na poziomie IP na poziomie URL JDBC
Bardziej szczegółowoBazy danych SQLite w Javie
Bazy danych SQLite w Javie Wprowadzenie Pisząc coraz to bardziej złożone aplikacje często problemem staje się to, że nasze dane chcielibyśmy przechowywać w nieco bardziej elastyczny sposób, niż tylko w
Bardziej szczegółowoSQL 4 Structured Query Lenguage
Wykład 5 SQL 4 Structured Query Lenguage Instrukcje sterowania danymi Bazy Danych - A. Dawid 2011 1 CREATE USER Tworzy nowego użytkownika Składnia CREATE USER specyfikacja użytkownika [, specyfikacja użytkownika]...
Bardziej szczegółowoKOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów
KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów SQL3 wprowadza następujące kolekcje: zbiory ( SETS ) - zestaw elementów bez powtórzeń, kolejność nieistotna listy ( LISTS ) - zestaw
Bardziej szczegółowoWykład 12. Programowanie serwera MS SQL 2005 w C#
Wykład 12 Programowanie serwera MS SQL 2005 w C# Budowa procedur składowanych w C# Budowa funkcji składowanych w C# Wykorzystanie funkcji składowanych w C# po stronie klienta Tworzenie typów definiowanych
Bardziej szczegółowoDokumentacja do API Javy.
Dokumentacja do API Javy http://java.sun.com/j2se/1.5.0/docs/api/ Klasy i obiekty Klasa jest to struktura zawierająca dane (pola), oraz funkcje operujące na tych danych (metody). Klasa jest rodzajem szablonu
Bardziej szczegółowoProgramowanie Obiektowe Java
Programowanie Obiektowe Java Małgorzata Janik Zakład Fizyki Jądrowej malgorzata.janik@pw.edu.pl http://java.fizyka.pw.edu.pl/ Bazy danych DBMS H2 SQL JDBC 2/128 Bazy danych za: Wikipedia Baza danych =
Bardziej szczegółowoZaawansowane aplikacje WWW - laboratorium
Zaawansowane aplikacje WWW - laboratorium Przetwarzanie XML (część 2) Celem ćwiczenia jest przygotowanie aplikacji, która umożliwi odczyt i przetwarzanie pliku z zawartością XML. Aplikacja, napisana w
Bardziej szczegółowoInstytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski. Zaawansowane Systemy Decyzyjne. Laboratorium
Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski Zaawansowane Systemy Decyzyjne Laboratorium prowadzący: Andrzej Czajkowski 1 Dostęp do Bazy Danych. 1 Cel ćwiczenia. Celem ćwiczenia
Bardziej szczegółowoKurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016
Wykład 9 28 kwiecień 2016 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa
Bardziej szczegółowoJava rozszerzenie. dr. A. Dawid
Java rozszerzenie PLAN WYKŁADU 1. Java2D AWT SWING Inicjalizacja Metody 2. JDBC Connector 3. Programowanie sieciowe Socket ServerSocket 4. Servlety Serwer internetowy Klasa HttpServlet 5. JSP 6. Java3D
Bardziej szczegółowoSkładowane procedury i funkcje
Składowane procedury i funkcje Procedury i funkcje są zestawem poleceń SQL, które są przechowywane na serwerze (tak jak dane w tablicach). Istnieją sytuacje, kiedy procedury i funkcje są szczególnie przydatne.
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 2: Wstęp do języka Java 3/4/2013 S.Deniziak: Programowanie obiektowe - Java 1 Cechy języka Java Wszystko jest obiektem Nie ma zmiennych globalnych Nie ma funkcji globalnych
Bardziej szczegółowoProgramowanie Obiektowe Java
Programowanie Obiektowe Java Małgorzata Janik Zakład Fizyki Jądrowej malgorzata.janik@pw.edu.pl http://java.fizyka.pw.edu.pl/ Bazy danych DBMS H2 SQL JDBC Bazy Danych za: Wikipedia Baza danych = zbiór
Bardziej szczegółowoJęzyki programowania wysokiego poziomu. PHP cz.4. Bazy danych
Języki programowania wysokiego poziomu PHP cz.4. Bazy danych PHP i bazy danych PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 8 Wprowadzenie Definiowanie typu obiektowego Porównywanie obiektów Tabele z obiektami Operacje DML na obiektach Dziedziczenie -
Bardziej szczegółowoWykład 2 Wybrane konstrukcje obiektowych języków programowania (1)
MAS dr. Inż. Mariusz Trzaska Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1) Zagadnienia o Podstawy o Kontrolowanie sterowania o Klasy o Interfejsy o Obsługa błędów o Pojemniki o System
Bardziej szczegółowoBAZA DANYCH SIECI HOTELI
Paulina Gogół s241906 BAZA DANYCH SIECI HOTELI Baza jest częścią systemu zarządzającego pewną siecią hoteli. Składa się z tabeli powiązanych ze sobą różnymi relacjami. Służy ona lepszemu zorganizowaniu
Bardziej szczegółowoMetody Metody, parametry, zwracanie wartości
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Metody Metody, parametry, zwracanie wartości Metody - co to jest i po co? Metoda to wydzielona część klasy, mająca
Bardziej szczegółowo15. Funkcje i procedury składowane PL/SQL
15. Funkcje i procedury składowane PLSQL 15.1. SQL i PLSQL (Structured Query Language - SQL) Język zapytań strukturalnych SQL jest zbiorem poleceń, za pomocą których programy i uŝytkownicy uzyskują dostęp
Bardziej szczegółowoMetody dostępu do danych
Metody dostępu do danych dr inż. Grzegorz Michalski Na podstawie materiałów dra inż. Juliusza Mikody Jak działa JDO Podstawowym zadaniem JDO jest umożliwienie aplikacjom Javy transparentnego umieszczenia
Bardziej szczegółowoJava i bazy danych. 1. JDBC podstawy, transakcje. 2. Mapowanie relacyjno obiektowe. Hibernate, przykład.
Java i bazy danych 1. JDBC podstawy, transakcje. 2. Mapowanie relacyjno obiektowe. Hibernate, przykład. 1 JDBC - wprowadzenie Java Database Connectivity (JDBC) to specyfkacja określająca zbiór klas i interfejsów
Bardziej szczegółowoPlan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL,
Mój projekt przedstawia bazę danych noclegów składającą się z 10 tabel. W projekcie wykorzystuje program LibreOffice Base do połączenia psql z graficznym interfejsem ( kilka formularzy przedstawiających
Bardziej szczegółowoĆwiczenia laboratoryjne nr 11 Bazy danych i SQL.
Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe III. Refleksja Małgorzata Prolejko OBI JA16Z03 Plan Klasa Class. Analiza funkcjonalności klasy. Podstawy obsługi wyjątków. Zastosowanie refleksji do analizy obiektów. Wywoływanie
Bardziej szczegółowoProtokół JDBC współpraca z relacyjnymi bazami danych
Protokół JDBC współpraca z relacyjnymi bazami danych Dr inż. Zofia Kruczkiewicz internetowych wykład 4 1 Java SE 8.0 2 2 Architektura JDBC 2.1.Dwuwarstwowa architektura dostępu do baz danych 3 2. 2. Trójwarstwowa
Bardziej szczegółowoĆwiczenie 10 JDBC. Wywoływanie poleceń SQL z języków programowania. Ćwiczenie 10 JDBC. Wymagania: Bazy Danych
Bazy Danych Ćwiczenie 10 JDBC Wywoływanie poleceń SQL z języków programowania. Ćwiczenie 10 JDBC Na dotychczasowych ćwiczeniach wykorzystywaliście państwo program pozwalający na bezpośrednie wydawanie
Bardziej szczegółowoBazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)
Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa dwunasty PL/SQL, c.d. 1 / 37 SQL to za mało SQL brakuje możliwości dostępnych w językach proceduralnych.
Bardziej szczegółowoE.14 Bazy Danych cz. 18 SQL Funkcje, procedury składowane i wyzwalacze
Funkcje użytkownika Tworzenie funkcji Usuwanie funkcji Procedury składowane Tworzenie procedur składowanych Usuwanie procedur składowanych Wyzwalacze Wyzwalacze a ograniczenia i procedury składowane Tworzenie
Bardziej szczegółowoPodstawy programowania III WYKŁAD 2
Podstawy programowania III WYKŁAD 2 Jan Kazimirski 1 Komunikacja z bazami danych 2 PHP i bazy danych PHP zapewnia dostęp do wielu popularnych baz danych. Kilka poziomów abstrakcji: Funkcje obsługujące
Bardziej szczegółowoDECLARE VARIABLE zmienna1 typ danych; BEGIN
Procedury zapamiętane w Interbase - samodzielne programy napisane w specjalnym języku (właściwym dla serwera baz danych Interbase), który umożliwia tworzenie zapytań, pętli, instrukcji warunkowych itp.;
Bardziej szczegółowoProgramowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków
Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków mgr inż. Maciej Lasota Version 1.0, 13-05-2017 Spis treści Wyjątki....................................................................................
Bardziej szczegółowoObiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1
Obiektowe programowanie rozproszone Java RMI Krzysztof Banaś Systemy rozproszone 1 Java RMI Mechanizm zdalnego wywołania metod Javy (RMI Remote Method Invocation) posiada kilka charakterystycznych cech,
Bardziej szczegółowoKurs WWW. Paweł Rajba. pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/
Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Spis treści Wprowadzenie Automatyczne ładowanie klas Składowe klasy, widoczność składowych Konstruktory i tworzenie obiektów Destruktory i
Bardziej szczegółowoJęzyk PL/SQL. Rozdział 5. Pakiety podprogramów. Dynamiczny SQL
Język PL/SQL. Rozdział 5. Pakiety podprogramów. Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL.
Bardziej szczegółowoDAO. tworzenie tabeli
Mały poradnik do projektu z baz danych macie przykładowe kody DAO I ADODB, pewnie nie wszystkie, jak będą prośby to się dopisze co trzeba na razie będzie to wersja: 0.1 tego dokumentu. Na czerwono zaznaczyłem
Bardziej szczegółowoGenerowanie dokumentów XML z tabel relacyjnych - funkcje SQLX
Aktualizowanie dokumentów XML ( Oracle ) do aktualizowania zawartości dokumentów XML służy między innymi funkcja updatexml. wynikiem jej działania jest oryginalny dokument ze zmodyfikowanym fragmentem,
Bardziej szczegółowoKurs programowania aplikacji bazodanowych
Wykład 1 Instytut Informatyki Uniwersytet Wrocławski Plan wykładu Architektury aplikacji Architektura aplikacji Jednowarstwowa Dwuwarstowa Rozproszona (JDBC) Wprowadzenie Architektura JDBC Sterowniki,
Bardziej szczegółowoPodstawy i języki programowania
Podstawy i języki programowania Laboratorium 2 - wprowadzenie do zmiennych mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 23 października 2017 1 / 26 mgr inż. Krzysztof Szwarc Podstawy i
Bardziej szczegółowoProgramowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie
Programowanie MSQL show databases; - pokazanie jakie bazy danych są dostępne na koncie show databases; - wyświetlenie wszystkich baz danych na serwerze create database nazwa; - za nazwa wstawiamy wybraną
Bardziej szczegółowoProcedury i funkcje składowane
Procedury i funkcje składowane Zmienne podstawienia i zmienne wiązane, podprogramy, procedury składowane, typy argumentów, wywoływanie procedur, funkcje składowane, poziomy czystości funkcji, funkcje tablicowe
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 4 Marcin Młotkowski 15 marca 2018 Plan wykładu 1 2 3 Klasa podstawowa Własne kolekcje Obiekty i wartości Marcin Młotkowski Programowanie obiektowe 141 / 224 Z czego składa
Bardziej szczegółowoRozdział 4 KLASY, OBIEKTY, METODY
Rozdział 4 KLASY, OBIEKTY, METODY Java jest językiem w pełni zorientowanym obiektowo. Wszystkie elementy opisujące dane, za wyjątkiem zmiennych prostych są obiektami. Sam program też jest obiektem pewnej
Bardziej szczegółowoKlasy i obiekty cz II
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Klasy i obiekty cz II Hermetyzacja, mutatory, akcesory, ArrayList Rozwijamy aplikację Chcemy, aby obiekty klasy
Bardziej szczegółowoWykład 2: Podstawy Języka
Wykład 2: Podstawy Języka 1.wprowadzenie 2.podstawy języka 3.sterowanie 4.inicjacja i sprzątanie 5.kontrola dostępu 6.dziedziczenie 7.polimorfizm 8.obsługa błędów 9.kolekcje obiektów 10.wejście i wyjście
Bardziej szczegółowo1. Połączenie z bazą danych. W wybranym edytorze tworzymy plik sqltest.py i umieszczamy w nim poniższy kod. #!/usr/bin/python3 import sqlite3
cur.executescript(""" DROP TABLE IF EXISTS uczen; CREATE TABLE IF NOT EXISTS uczen ( Uniwersytet Technologiczno-Przyrodniczy im. J.J. Śniadeckich w Bydgoszczy Instrukcja do ćwiczeń laboratoryjnych Przedmiot
Bardziej szczegółowoKursor jawny. Rozdział 10a Kursory. Deklarowanie kursora (1) Deklarowanie kursora (2)
Kursor jawny Każde zapytanie SQL umieszczone w programie PL/SQL może zwrócić zero, jedną bądź wiele krotek. Aby efektywnie przetworzyć krotkizwrócone przez zapytanie korzystamy z kursorów. Kursor jest
Bardziej szczegółowoKurs programowania. Wykład 9. Wojciech Macyna
Wykład 9 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa zbiór, lista czy
Bardziej szczegółowo