PL/SQL. Zaawansowane tematy PL/SQL
|
|
- Konrad Bednarczyk
- 6 lat temu
- Przeglądów:
Transkrypt
1 PL/SQL Zaawansowane tematy PL/SQL
2 Cele Poznanie złożonych i referencyjnych typów danych Poznanie konstrukcji kursora Poznanie kodu składowanego Poznanie procedur i funkcji 2
3 Złożone typy danych RECORD typ danych zawierający wiele wartości skalarnych Deklaracja typu danych: TYPE r_faktura IS RECORD ( kwota NUMBER, dostawca VARCHAR2(100) ); deklaracja zmiennej: l_faktura r_faktura; wykorzystywanie pól zmiennej typu rekord: l_faktura.kwota := 100; 3
4 Złożone typy danych - przykład DECLARE TYPE r_faktura IS RECORD( kwota NUMBER, dostawca VARCHAR2(100)); lr_faktura1 r_faktura; lr_faktura2 r_faktura; Begin lr_faktura1.kwota := 100; lr_faktura2.kwota := 200; lr_faktura1.dostawca := IBM ; lr_faktura2.kwota := lr_faktura1.kwota + lr_faktura2.kwota; lr_faktura2.dostawca := lr_faktura1.dostawca; lr_faktura1 := lr_faktura2; End; 4
5 Referencyjne typy danych %TYPE: Typ danych zgodny z typem kolumny w tabeli ls_first_name EMPLOYEES.FIRST_NAME%TYPE; %ROWTYPE: deklaruje zmienne typu RECORD, wartości skalarne są zgodne z definicją tabeli l_employees EMPLOYEES%ROWTYPE; 5
6 Referencyjne typy danych - przykład DECLARE ls_first_name EMPLOYEES.FIRST_NAME%TYPE; ls_first_name := Jan ; DBMS_OUTPUT.PUT_LINE(ls_first_name); 6
7 Referencyjne typy danych - przykład DECLARE lr_employee1 EMPLOYEES%ROWTYPE; lr_employee2 EMPLOYEES%ROWTYPE; lr_employee1.first_name:= Jan ; lr_employee1.last_name:= Kowalski ; lr_employee2.first_name:= Andrzej ; lr_employee1.last_name:= lr_employee1.last_name; 7
8 Referencyjne typy danych - przykład DECLARE lr_employee EMPLOYEES%ROWTYPE; lr_employee.first_name:= Andrzej ; lr_employee.last_name:= Nowak ; lr_employee.salary:= 5000; INSERT INTO EMPLOYEES VALUES lr_employee; 8
9 Kursory Służą do pobierania danych z bazy danych na podstawie zapytania 9
10 Niejawny kursor (Implicit Cursor) Uruchomienie zapytania SELECT.. INTO tworzy niejawny kursor Niejawany kursor zwraca wyniki zapytania do zmiennej: SELECT first_name, last_name, salary INTO ls_first_name, ls_last_name, ln_salary FROM employees WHERE employee_id = 100; 10
11 Niejawny kursor (Implicit Cursor) Może być użyty tylko z zapytaniami zwracającymi jeden rekord Gdy zapytanie zwróci więcej niż jeden rekord, podniesiony zostanie wyjątek TOO_MANY_ROWS Gdy zapytanie nie zwróci danych, podniesiony zostanie wyjątek NO_DATA_FOUND 11
12 Niejawny kursor przykład DECLARE ls_first_name employees.first_name%type; ls_last_name employees.last_name%type; ln_salary employees.salary%type; SELECT first_name, last_name, salary INTO ls_first_name, ls_last_name, ln_salary FROM employees WHERE employee_id = 100; DBMS_OUTPUT.PUT_LINE(ls_first_name ' ' ls_last_name ' zarabia ' ln_salary); 12
13 Niejawny kursor przykład DECLARE lr_employee EMPLOYEES%ROWTYPE; SELECT * INTO lr_employee FROM EMPLOYEES WHERE employee_id = 100; DBMS_OUTPUT.PUT_LINE(lr_employee.first_name ' ' lr_employee.last_name ' zarabia ' lr_employee.salary); 13
14 Kursory jawne (Explicit) Służą do pobierania danych z bazy danych na podstawie zapytania Umożliwiają przetwarzanie danych rekord po rekordzie 14
15 Kursory Deklaracja kursora (w sekcji deklaracji) CURSOR nazwa_kursora IS zapytanie_select; Otwarcie kursora OPEN nazwa_kursora Pobranie danych FETCH nazwa_kursora INTO zmienne; Zamknięcie kursora CLOSE nazwa_kursora; 15
16 Przykład wykorzystania kursora DECLARE CURSOR c_kursor_pracownicy IS SELECT FIRST_NAME, LAST_NAME FROM employees; ls_first_name VARCHAR2(100); ls_last_name VARCHAR2(100); OPEN c_kursor_pracownicy; FETCH c_kursor_pracownicy INTO ls_first_name, ls_last_name ; dbms_output.put_line(ls_first_name ls_last_name); FETCH c_kursor_pracownicy INTO ls_first_name, ls_last_name ; dbms_output.put_line(ls_first_name ls_last_name); CLOSE c_kursor_pracownicy; 16
17 Zapisywanie wyników kursora do zmiennej złożonej Baza Oracle umożliwia stworzenie zmiennej RECORD o polach zgodnych z kursorem. W tym celu należy użyć słowa kluczowego %ROWTYPE: nazwa_kursora CURSOR IS SELECT * from employees; lr_zmienna nazwa_kursora%rowtype; FETCH nazwa_kursora INTO lr_zmienna; DBMS_OUTPUT.PUT_LINE(lr_zmienna.first_name); 17
18 Zapisywanie wyników kursora do zmiennej złożonej DECLARE CURSOR c_kursor_pracownicy IS SELECT * FROM employees; lr_pracownik c_kursor_pracownicy%rowtype; OPEN c_kursor_pracownicy; FETCH c_kursor_pracownicy INTO lr_pracownik; dbms_output.put_line( Pracownik lr_pracownik.first_name lr_pracownik.last_name pobiera wynagrodzenie lr_pracownik.salary) ; CLOSE c_kursor_pracownicy; 18
19 Atrybuty kursora Do sprawdzenia statusu kursora służą poniższe atrybuty Atrybut %ISOPEN %FOUND %NOTFOUND %ROWCOUNT Opis Zwraca TRUE gdy kursor jest otwarty, FALSE gdy kursor jest zamknięty Zwraca TRUE gdy kursor zwrócił dane, FALSE gdy kursor nie zwrócił danych (wszystkie dane z zapytania zostały pobrane). Zwraca FALSE gdy kursor zwrócił dane, TRUE gdy kursor nie zwrócił danych (wszystkie dane z zapytania zostały pobrane). Zwraca ilość już pobranych rekordów 19
20 Stosowanie atrybutów kursora IF c_kursor%isopen THEN dbms_output.put_line( Kursor c_kursor jest otwarty ); END IF; FETCH c_kursor INTO r_dane; IF c_kursor%notfound THEN dbms_output.put_line( Nie znaleziono danych w kursorze ); END IF; Dbms_output.put_line( Jak dotąd z kursora pobrano c_kursor%rowcount rekordów ); 20
21 Stosowanie atrybutów kursora DECLARE CURSOR c_kursor_pracownicy IS SELECT * FROM employees; lr_pracownik c_kursor_pracownicy%rowtype; OPEN c_kursor_pracownicy; FETCH c_kursor_pracownicy INTO lr_pracownik; IF c_kursor_pracownicy%notfound THEN DBMS_OUTPUT.PUT_LINE( Nie znaleziono pracownika! ); CLOSE c_kursor_pracownicy; RETURN; END IF; CLOSE c_kursor_pracownicy; 21
22 Pobieranie danych z kursora w pętli Deklaracja kursora (w sekcji deklaracji) CURSOR nazwa_kursora IS zapytanie_select; Otwarcie kursora OPEN nazwa_kursora Pobranie danych LOOP FETCH nazwa_kursora INTO zmienne; EXIT WHEN nazwa_kursora%notfound; Zamknięcie kursora CLOSE nazwa_kursora; 22
23 Pobieranie danych z kursora w pętli DECLARE CURSOR c_kursor_pracownicy IS SELECT FIRST_NAME FROM employees; l_first_name VARCHAR2(100); OPEN c_kursor_pracownicy; LOOP FETCH c_kursor_pracownicy INTO l_first_name; EXIT WHEN c_kursor_pracownicy%notfound; dbms_output.put_line(l_first_name); END LOOP; CLOSE c_kursor_pracownicy; 23
24 Pobieranie danych z kursora w pętli Aby skrócić zapis pobierania wszystkich rekordów z kursora Oracle wprowadził specjalną konstrukcję pętli FOR przetwarzającą kursory Pętla FOR automatycznie otwiera kursor, pobiera rekordy i zamyka kursor: FOR nazwa_zmiennej IN kursor LOOP instrukcje END LOOP; Zmienne kursorowe nie mogą być wykorzystywane poza pętlą 24
25 Pobieranie danych z kursora w pętli Przykład wykorzystania konstrukcji pętli FOR przetwarzającej kursor DECLARE CURSOR c_kursor_pracownicy IS SELECT FIRST_NAME FROM employees; FOR r_pracownik IN c_kursor_pracownicy LOOP dbms_output.put_line(r_pracownik.first_name); END LOOP; 25
26 Parametry kursorów Kursory mogą mieć zdefiniowane parametry. Parametry w kursorach stosujemy, gdy chcemy uzależnić wyniki zwracane przez kursor od wartości, których nie znamy podczas pisania programu. 26
27 Parametry kursorów Kursor z parametrami należy deklarować w następujący sposób: CURSOR nazwa_kursora (nazwa_parametru typ_parametru) IS zapytanie_wykorzystujące_parametr; 27
28 Parametry kursorów Kursor z parametrami należy otwierać w następujący sposób: OPEN nazwa_kursora(wartość_parametru); Aby wykorzystać pętlę przetwarzającą kursor korzystamy z następującego zapisu: FOR zmienna IN LOOP; nazwa_kursora(wartość_parametru) 28
29 Parametry kursorów - przykład DECLARE CURSOR c_kursor_pracownicy (ps_do_litery VARCHAR2) IS SELECT FIRST_NAME FROM employees WHERE LAST_NAME < ps_do_litery; FOR r_pracownik IN c_kursor_pracownicy( E ) LOOP dbms_output.put_line(r_pracownik.first_name); END LOOP; 29
30 Kod składowany Zestaw instrukcji realizujący pewną funkcjonalność Przechowywany w bazie danych jako obiekt bazodanowy Może być wykorzystywany przez inne programy Umożliwia dekompozycję programu na mniejsze części Ułatwia projektowanie i naprawianie błędów Ułatwia ponowne użycie kodu w innych systemach 30
31 Typy kodu składowanego Typ Procedura składowana (stored procedure) Funkcja składowana (stored function) Opis Obiekt realizujący pewną funkcjonalność. Może przyjmować dowolną ilość parametrów wejściowych i zwracać dowolną ilość parametrów wyjściowych. Obiekt realizujący pewną funkcjonalność. Może przyjmować dowolną ilość parametrów wejściowych i zwracać dowolną ilość parametrów wyjściowych. Jako wynik zwraca pojedynczą wartość. 31
32 Typy kodu składowanego Typ Pakiet składowany (stpred package) Wyzwalacz (trigger) Opis Kontener na procedury, funkcje, zmienne i typy. Stosowany w celu zgrupowania powiązanych procedur i funkcji w jednym miejscu. Zdefiniowany na tabeli, wykonuje się podczas operacji INSERT, UPDATE oraz DELETE. 32
33 Kod składowany Kod składowany tworzy się za pomocą słów kluczowych CREATE OR REPLACE CREATE OR REPLACE PROCEDURE log (ps_tekst IN varchar2)is DBMS_OUTPUT.PUT_LINE (ps_tekst); 33
34 Procedura Może przyjmować dowolną ilość parametrów wejściowych i zwracać dowolną ilość parametrów wyjściowych. 34
35 Procedura Budowa procedury CREATE OR REPLACE PROCEDURE nazwa_procedury (parametr1 IN/OUT typ, parametr2 IN/OUT typ, ) IS deklaracja zmiennych instrukcje PL/SQL EXCEPTION obsługa wyjątków 35
36 Procedura Przykład procedury PROCEDURE log (ps_tekst IN varchar2) IS DBMS_OUTPUT.PUT_LINE (ps_tekst); Nazwa procedury Wejściowy parametr tekstowy 36
37 Lista parametrów Lista parametrów definiuje nazwy parametrów, tryb dostępu oraz typ parametru Parametry są oddzielone od siebie przecinkami i umieszczone w nawiasach 37
38 Lista parametrów Tryb dostępu określa w jaki sposób procedura może korzystać z wartości parametru IN parametr jest parametrem wejściowym, procedura może tylko czytać jego wartość OUT parametr jest parametrem wyjściowym, procedura może tylko ustawiać jego wartość IN OUT parametr jest parametrem możliwym do odczytu i do zapisu przez procedurę 38
39 Przykład listy parametrów CREATE OR REPLACE PROCEDURE test_parametrow ( pn_parametr1 IN NUMBER, ps_parametr2 OUT VARCHAR2, pd_parametr3 IN OUT DATE, pn_parametr4 OUT NUMBER, pn_parametr5 IN VARCHAR2 ) 39
40 Lista parametrów Przykład demonstrujący parametr wyjściowy CREATE OR REPLACE PROCEDURE format_sysdate(ps_f OUT VARCHAR2) IS ps_f := TO_CHAR(SYSDATE, YYYY-MONTH-DD ); -- DECLARE ls_formatted_date VARCHAR2(50); format_sysdate (ps_f => ls_formatted_date); dbms_output.put_line( Dzis jest ls_formatted_date); 40
41 Lista parametrów Przykład demonstrujący parametr wejściowy-wyjściowy CREATE OR REPLACE PROCEDURE add_10(pn_liczba IN OUT NUMBER) IS pn_liczba := pn_liczba+10; -- DECLARE ln_liczba NUMBER := 1; add_10(ln_liczba); dbms_output.put_line( 1+10= ln_liczba); 41
42 Koniec pracy procedury Procedura kończy swoją pracę gdy: Sterowanie dojdzie do końca procedury Zostanie napotkany rozkaz RETURN; Podniesiony zostanie nieobsłużony wyjątek 42
43 Koniec pracy procedury - przykład CREATE OR REPLACE PROCEDURE test1 (ps_p1 IN VARCHAR2) IS DBMS_OUTPUT.PUT_LINE( Start ); IF ps_p1 = NOC THEN RETURN; END IF; DBMS_OUTPUT.PUT_LINE( Nie ma nocy ); Uruchomienie Test1( DZIEŃ ); Wynik Start Nie ma nocy Test1( NOC ); Start 43
44 Przykład procedury składowanej CREATE OR REPLACE PROCEDURE wyswietl_date(pd_date IN DATE) IS DBMS_OUTPUT.PUT_LINE( TO_CHAR(pd_date, DD-MM-YYYY ) ); 44
45 Uruchamianie procedury składowanej Z klienta sqlplus: EXECUTE wyswietl_date(sysdate); Z anonimowego bloku PL/SQL: wyswietl_date(sysdate); 45
46 Uruchamianie procedury składowanej Z innej procedury: PROCEDURE test IS dbms_output.put_line( Start ); wyswietl_date(sysdate); 46
47 Uruchamianie procedury składowanej Z procedury napisanej w języku Java: String = wyswietldatecall "\n" + " wyswietl_date(:1);\n" + ""; DBTransaction txn = getdbtransaction(); CallableStatement cs = txn.createcallablestatement(wyswietldatecall, 1); try { cs.setdate(1, datasystemowa); cs.execute(); } catch (SQLException e) { throw new Exception(e.getLocalizedMessage()); } 47
48 Procedura nie musi być składowana Przykład demonstrujący stosowanie funkcji w anonimowym bloku PL/SQL DECLARE -- PROCEDURE log (ps_tekst IN varchar2)is DBMS_OUTPUT.PUT_LINE(ps_tekst); -- Log( To ); Log( jest ); Log( Test ); 48
49 Funkcja Może przyjmować dowolną ilość parametrów wejściowych i zwracać dowolną ilość parametrów wyjściowych. Zawsze musi zwrócić wartość o typie zdefiniowanym w deklaracji funkcji. W tym celu należy wykorzystać konstrukcję: RETURN wartość; np. RETURN 10; 49
50 Funkcja Budowa funkcji FUNCTION nazwa_funkcji (parametr1 IN/OUT typ, parametr2 IN/OUT typ, ) RETURN typ_wartości_wyjściowej IS deklaracja zmiennych instrukcje PL/SQL EXCEPTION obsługa wyjątków 50
51 Funkcja Przykład demonstrujący funkcję CREATE OR REPLACE FUNCTION add_10(pn_liczba IN NUMBER) RETURN NUMBER IS RETURN pn_liczba+10; 51
52 Uruchamianie funkcji składowanej Z anonimowego bloku PL/SQL: DECLARE ln_liczba NUMBER; ln_liczba := add_10(1); 52
53 Uruchamianie funkcji składowanej Z innej funkcji lub procedury CREATE OR REPLACE PROCEDURE test IS ln_liczba NUMBER; ln_liczba := add_10(1); 53
54 Uruchamianie funkcji składowanej Jako parametr innej funkcji lub procedury dbms_output.put_line(add_10(1)); dbms_output.put_line(add_10(add_10(1))); 54
55 Uruchamianie funkcji składowanej Funkcje składowane można stosować w zapytaniach SELECT na przykład: SELECT add_10(salary) FROM employees; Funkcje wykorzystywane w zapytaniach SELECT muszą spełniać następujące kryteria: Nie mogą mieć parametrów wyjściowych, ani parametrów wejścia-wyjścia Nie mogą wykonywać instrukcji INSERT/UPDATE/DELETE Nie mogą wykonywać instrukcji COMMIT i ROLLBACK 55
56 Koniec pracy funkcji Funkcja kończy swoją pracę gdy: Zostanie napotkany rozkaz RETURN <wartość>; Podniesiony zostanie nieobsłużony wyjątek Gdy sterowanie dojdzie do końca funkcji, podniesiony zostanie wyjątek Powrót z funkcji bez wartości. Jest to sytuacja nieprawidłowa. 56
57 Funkcja przykład Przykład demonstrujący funkcję CREATE OR REPLACE FUNCTION slownie(pn_liczba IN NUMBER) RETURN VARCHAR2 IS IF pn_liczba = 1 THEN RETURN Jeden ; END IF; IF pn_liczba = 2 THEN RETURN Dwa ; END IF; IF pn_liczba = 3 THEN RETURN Trzy ; END IF; RETURN Nieobsługiwana liczba! ; 57
58 Funkcja nie musi być składowana Przykład demonstrujący stosowanie funkcji w anonimowym bloku PL/SQL DECLARE -- FUNCTION add_10(pn_liczba IN NUMBER) RETURN NUMBER IS RETURN pn_liczba+10; -- dbms_output.put_line( 1+10= add_10(1)); 58
59 Procedury zagnieżdżone Procedury mogą mieć swoje procedury i funkcje PROCEDURE procedura1 () IS FUNCTION funkcja1 ( ) RETURN NUMBER IS DECLARE PROCEDURE procedura2 ( ) IS FUNCTION funkcja2 ( ) RETURN VARCHAR2 IS 59
Materiał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ół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ółowoPlan wykładu BAZY DANYCH II WYKŁAD 4. Co to jest kursor? Rodzaje kursorów
Plan wykładu Kursory: deklaracja, otwieranie, pobieranie danych, zamykanie Kursory: atrybuty Kursory: pętle, rekordy Kursory z parametrami BAZY DANYCH II WYKŁAD 4 dr inż. Agnieszka Bołtuć Co to jest kursor?
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ółowoPL/SQL. Zaawansowane tematy PL/SQL
PL/SQL Zaawansowane tematy PL/SQL Cele Przypomnienie kursorów Przypomnienie procedur i funkcji składowanych Poznanie pakietów składowanych 2 Bazę danych Oracle możemy traktować jakby była złożona z dwóch
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ółowoCheatsheet PL/SQL Andrzej Klusiewicz 1/9
Declare y integer; z varchar2(50); d date; null; Declare x integer:=10; null; x integer; x:=10; dbms_output.put_line('hello world'); for x in 1..10 loop Deklaracja 4 zmiennych. Jednej typu rzeczywistego,
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ółowoPlan wykładu BAZY DANYCH II WYKŁAD 3. Zasięg zmiennych. Zasięg zmiennych
Plan wykładu BAZY DANYCH II WYKŁAD 3 Zasięg zmiennych Zmienne powiązane Instrukcje warunkowe Pętle Pobieranie danych SQL w PL/SQL Rekordy dr inż. Agnieszka Bołtuć Zasięg zmiennych Zmienna jest dostępna
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ół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ół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ółowoDeklarowanie kursora
Kursory i wyjątki Kursory i praca z kursorami, kursory jawne i niejawne, otwieranie kursora, pobieranie z kursora, zamykanie kursora, wyjątki systemowe i użytkownika, zgłaszanie i obsługa wyjątków 1 Kursor
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ółowoPakiety są logicznymi zbiorami obiektów takich jak podprogramy, typy, zmienne, kursory, wyjątki.
Pakiety Pakiety są logicznymi zbiorami obiektów takich jak podprogramy, typy, zmienne, kursory, wyjątki. Pakiet składa się ze: specyfikacji (interfejsu) i ciała (implementacji). W specyfikacji mieszczą
Bardziej szczegółowoPlan wykładu PL/SQL. PL/SQL - historia TWORZENIE APLIKACJI BAZODANOWYCH
Plan wykładu 2 TWORZENIE APLIKACJI BAZODANOWYCH Wykład 2: Wprowadzenie do PL/SQL: bloki anonimowe, zmienne, kursory Wprowadzenie do PL/SQL Bloki Podstawowe składowe języka Zmienne i stałe Kursory Małgorzata
Bardziej szczegółowoKursory i wyjątki. (c) Instytut Informatyki Politechniki Poznańskiej 1
Kursory i wyjątki Kursory i praca z kursorami, kursory jawne i niejawne, otwieranie kursora, pobieranie z kursora, zamykanie kursora, wyjątki systemowe i użytkownika, zgłaszanie i obsługa wyjątków 1 Kursor
Bardziej szczegółowoJęzyk PL/SQL Procedury i funkcje składowane
Język PL/SQL Procedury i funkcje składowane Podprogramy, procedury i funkcje składowane, typy argumentów, wywoływanie procedur i funkcji, poziomy czystości funkcji 1 Podprogramy Procedury (wykonują określone
Bardziej szczegółowoJęzyk PL/SQL. Rozdział 2. Kursory
Język PL/SQL. Rozdział 2. Kursory Deklarowanie kursora, otwieranie kursora, pobieranie z kursora, zamykanie kursora, zmienne kursorowe, wyrażenie CURSOR, kursory niejawne. 1 Kursor jawny Każde zapytanie
Bardziej szczegółowoKursor. Rozdział 10a Kursory. Otwieranie kursora. Deklarowanie kursora
Kursor Rozdział 10a Kursory Kursory i praca z kursorami, kursory jawne i niejawne, otwieranie kursora, pobieranie z kursora, zamykanie kursora, zmienne kursorowe, wyrażenie CURSOR Każde zapytanie SQL umieszczone
Bardziej szczegółowoDeklarowanie kursora. CURSOR nazwa [ ( param1 typ1 [,param2 typ2]... ) ] [RETURN typ zwracany] IS zapytanie SQL;
Kursory Każde zapytanie SQL umieszczone w programie PLSQL jest wykonywane w tzw. obszarze roboczym lub inaczej obszarze kontekstu. PLSQL wykorzystuje ten obszar do przechowywania danych otrzymanych w wyniku
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ółowo1 Kursory 1. 2 Wyjątki Wyjątki predefiniowane Wyjątki niezdefiniowane wcześniej Definiowanie własnych wyjątków...
Plan wykładu Spis treści 1 Kursory 1 2 Wyjątki 4 2.1 Wyjątki predefiniowane............................. 4 2.2 Wyjątki niezdefiniowane wcześniej....................... 5 2.3 Definiowanie własnych wyjątków........................
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ółowoPL/SQL. Część 1 Bloki PL/SQL. Piotr Medoń
PL/SQL Część 1 Bloki PL/SQL Piotr Medoń Cele Zapoznanie się z podstawowymi typami PL/SQL Zapoznanie się z blokiem PL/SQL Zapoznanie się z instrukcjami sterującymi wykonaniem 2 Blok PL/SQL Struktura bloku
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ół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ółowoZaawansowane bazy danych i hurtownie danych semestr I
Ważne informacje Wydział Informatyki Politechnika Białostocka Zaawansowane bazy danych i hurtownie danych semestr I WYKŁAD 1: Wprowadzenie do przedmiotu, proceduralny język SQL 1. Sylabus w USOS ie: Ogólny
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ół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ółowoOracle Developer Suite. Budowa aplikacji użytkownika końcowego
Oracle Developer Suite Budowa aplikacji użytkownika końcowego Składniki pakietu Oracle Developer Suite Oracle Forms Builder formularze (aplikacje dostępne z poziomu przeglądarki internetowej, model 3-warstwowy)
Bardziej szczegółowoPaździernik 2015. Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska. Systemy baz danych - wykład III. dr inż.
1/40 Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Październik 2015 2/40 Plan wykładu Uzupełnienie projektu fizycznego Czym jest PL/SQL Bloki w PL/SQL Wykorzystanie 3/40 Projekt
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 5 Wprowadzenie Tworzenie i wykonywanie procedur i funkcji Instrukcja RETURN Parametry procedur i funkcji oraz ich przesyłanie Metadane
Bardziej szczegółowoPlan wykładu Projekt fizyczny bazy danych Wprowadzenie PL/SQL PL/SQL Cechy PL/SQL
Plan wykładu Uzupełnienie projektu fizycznego Czym jest PL/SQL Bloki w PL/SQL Zmienne i stałe Instrukcje sterujące Wykorzystanie SQL w PL/SQL Kursory Wyjątki Projekt fizyczny bazy danych Braki projektu
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 2. Bloki. Struktura bloku
Plan wykładu BAZY DANYCH II WYKŁAD 2 Bloki, struktura, sekcje Bloki anonimowe Tworzenie i uruchamianie Identyfikatory Literały Typy danych dr inż. Agnieszka Bołtuć Bloki Struktura bloku W programach pisanych
Bardziej szczegółowoProcedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1
Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie wyzwalaczami 1 Procedury wyzwalane
Bardziej szczegółowoZaawansowane bazy danych i hurtownie danych semestr I
Podprogramy Wydział Informatyki Politechnika Białostocka Zaawansowane bazy danych i hurtownie danych semestr I Procedury do przeprowadzenia akcji Funkcje do obliczania wartości Pakiety do zbierania logicznie
Bardziej szczegółowoWyzwalacze. Anna Fiedorowicz Bazy danych 2
Wyzwalacze Wyzwalacze są specjalnymi procedurami składowanymi, uruchamianymi automatycznie w następstwie zaistnienia określonego typu zdarzenia. Ich główne zadanie polega na wymuszaniu integralności danych
Bardziej szczegółowoORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko. Typy rozproszonych baz danych. Systemy klient-serwer. Klient-serwer: Przykład
ORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko Typy rozproszonych baz Systemy typu klient-serwer (jeden serwer) Jednorodna rozproszona baza (kilka serwerow, jeden system zarzadzania baza ) Niejednorodna
Bardziej szczegółowoĆwiczenia 2 IBM DB2 Data Studio
Ćwiczenia 2 IBM DB2 Data Studio Temat: Aplikacje w Data Studio 1. Projekty Tworzenie procedur, UDF, trygerów zaczynamy od utworzenia projektu File -> New -> Project wybieramy Data Development Project.
Bardziej szczegółowoTworzenie raportów XML Publisher przy użyciu Data Templates
Tworzenie raportów XML Publisher przy użyciu Data Templates Wykorzystanie Szablonów Danych (ang. Data templates) jest to jedna z metod tworzenia raportów w technologii XML Publisher bez użycia narzędzia
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ółowoPL/SQL. Zaawansowane tematy PL/SQL. Piotr Medoń
PL/SQL Zaawansowane tematy PL/SQL Piotr Medoń Cele Omówienie transakcji bazodanowych Omówienie obsługi wyjątków Zarządzanie perspektywami Tworzenie i usuwanie sekwencji Budowa wyzwalaczy 2 Transakcje bazodanowe
Bardziej szczegółowoWyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia
Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Składowe wyzwalacza ( ECA ): określenie zdarzenia ( Event ) określenie
Bardziej szczegółowo1. ELEMENTY JĘZYKA PL/SQL
1. ELEMENTY JĘZYKA PL/SQL Aplikacje korzystające z PL/SQL będącego proceduralnym rozszerzeniem SQL mogą wykonywać procedury i funkcje języka PL/SQL składowane w bazie danych oraz wysyłać własne programy
Bardziej szczegółowoKursory - pobieranie danych z baz danych do programów PL/SQL
Kursory - pobieranie danych z baz danych do programów PL/SQL Rozważania będą dotyczyć sposobów pobierania danych z baz danych do programów przechowywanych w pamięci. Interakcja języka PL/SQL z językiem
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 5. Kolekcje. Tablice asocjacyjne Kolekcje Tablice asocjacyjne VARRAY Tablice zagnieżdżone
Plan wykładu Kolekcje Tablice asocjacyjne VARRAY Tablice zagnieżdżone BAZY DANYCH II WYKŁAD 5 dr inż. Agnieszka Bołtuć Kolekcje Tablice asocjacyjne Używane w celu gromadzenia danych tego samego typu, Rekordy
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ółowoJęzyk PL/SQL Pakiety podprogramów
Język PL/SQL Pakiety podprogramów Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora) 1 Pakiety Pakiet (ang. package) grupuje powiązane
Bardziej szczegółowoPL/SQL. Lidia Małkiewicz i Cezary Skubała
PL/SQL Lidia Małkiewicz i Cezary Skubała Jest językiem trzeciej generacji (3GL), który udostępnia konstrukty programistyczne, włączając w to deklaracje zmiennych, pętlę, obsługę błędów itd. Obecnie PL/SQL
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ółowoJęzyk PL/SQL. Rozdział 4. Procedury i funkcje składowane
Język PL/SQL. Rozdział 4. Procedury i funkcje składowane Podprogramy, procedury składowane, funkcje składowane, wywoływanie podprogramów. (c) Instytut Informatyki Politechniki Poznańskiej 1 Podprogramy
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ółowoIndeksy. Indeks typu B drzewo
Indeksy dodatkowe struktury służące przyśpieszeniu dostępu do danych o użyciu indeksu podczas realizacji poleceń decyduje SZBD niektóre systemy bazodanowe automatycznie tworzą indeksy dla kolumn o wartościach
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ółowoPodprogramy. Rozdział 11 Procedury i funkcje składowane
Podprogramy Rozdział 11 Procedury i funkcje składowane Podprogramy, procedury składowane, funkcje składowane, wywoływanie podprogramów Przez podprogramy rozumiemy głównie: procedury (wykonują określone
Bardziej szczegółowoOracle11g: Programowanie w PL/SQL
Oracle11g: Programowanie w PL/SQL OPIS: Kurs pozwala zrozumieć zalety programowania w języku PL/SQL. Studenci uczą się tworzyć bloki kodu wykonywanego po stronie serwera, który może być współużytkowany
Bardziej szczegółowoTabele wykorzystywane w przykładach
Tabele wykorzystywane w przykładach create table departamenty( dep_id serial primary key, nazwa_departamentu text ); Tabele używane w wybranych przkładach create table pracownicy ( emp_id serial primary
Bardziej szczegółowoWyzwalacze. do automatycznego generowania wartości kluczy głównych. Składnia instrukcji tworzacej wyzwalacz
Wyzwalacze Wyzwalacze są specjalnymi procedurami składowanymi, uruchamianymi automatycznie w następstwie zaistnienia określonego typu zdarzenia. Ich główne zadanie polega na wymuszaniu integralności danych
Bardziej szczegółowoJęzyk PL/SQL Wprowadzenie
Język PL/SQL Wprowadzenie Koncepcja języka, zmienne i stałe, typy zmiennych, nadawanie wartości zmiennym, instrukcje warunkowe, pętle, sterowanie przebiegiem programu 1 Wprowadzenie do języka PL/SQL Język
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 4 Wyjątki PL/SQL Mechanizmy dotyczące błędów Typy wyjątków Obsługa wyjątków PL/SQL Obsługa błędów predefiniowanych, użytkownika
Bardziej szczegółowoBAZY DANYCH W APLIKACJACH SIECIOWYCH
BAZY DANYCH W APLIKACJACH SIECIOWYCH Wykład 4 Wyjątki. Wyzwalacze bazodanowe. (Wybrane materiały) Dr inż. E. Busłowska Obsługa wyjątków w PLSQL Wyjątek (ang. Exception) - błąd lub ostrzeżenie w PLSQL Typy
Bardziej szczegółowoBazy danych, 4. wiczenia
Bazy danych, 4. wiczenia 2007-10-23 1 Plan zaj PL/SQL, cz ± II: tabele kursory sªu» ce do zmiany danych, procedury, funkcje, pakiety, wyzwalacze. 2 Tabele Deklaracja TYPE t_tab IS TABLE OF VARCHAR(20)
Bardziej szczegółowoKursory. A. Pankowska 1
Kursory 1 Kursory Kursor jest mechanizmem pozwalającym obsłużyć zbiór zawierający wiele wierszy danych (generowany np. poleceniem SELECT). Jak wskaźnik przebiega on po kolejnych krotkach ze zbioru danych,
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ółowoPlan wykładu BAZY DANYCH II WYKŁAD 7. Pakiety. Zalety pakietów 2011-01-13
Plan wykładu BAZY DANYCH II WYKŁAD 7 Pakiety: specyfikacja, ciało, Wywoływanie elementów pakietów, Przeciążanie podprogramów z pakietów, Inicjowanie pakietów, Deklaracje uprzedzające, Funkcje pakietowe
Bardziej szczegółowo1 Wprowadzenie do bloków nazwanych 1. 2 Parametry 2. 3 Procedury i funkcje 3. 4 Pakiety 6. 5 Podsumowanie Źródła 10
Plan wykładu Spis treści 1 Wprowadzenie do bloków nazwanych 1 2 Parametry 2 3 Procedury i funkcje 3 4 Pakiety 6 5 Podsumowanie 10 6 Źródła 10 1 Wprowadzenie do bloków nazwanych Rodzaje bloków w PL/SQL
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ółowoJęzyk PL/SQL Wprowadzenie
Język PL/SQL Wprowadzenie Koncepcja języka, zmienne i stałe, typy zmiennych, nadawanie wartości zmiennym, instrukcje warunkowe, pętle, sterowanie przebiegiem programu 1 Wprowadzenie do języka PL/SQL Język
Bardziej szczegółowoBlaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik
Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Technologia Przykłady praktycznych zastosowań wyzwalaczy będą omawiane na bazie systemu MS SQL Server 2005 Wprowadzenie
Bardziej szczegółowoPrzykład 3 Zdefiniuj w bazie danych hurtownia_nazwisko przykładową funkcję użytkownika fn_rok;
Temat: Funkcje, procedury i wyzwalacze. Oprócz tabel i widoków w bazach danych możemy tworzyć własne funkcje, procedury i specjalny typ procedur, które będą automatycznie wywoływanie przez MySQL w memencie
Bardziej szczegółowoWprowadzenie do języka PL/SQL. Język PL/SQL Wprowadzenie. Struktura blokowa programu. Przykładowy program w PL/SQL. Zmienne rekordowe.
Wprowadzenie do języka PL/SQL Język PL/SQL Wprowadzenie Język PL/SQL to rozszerzenie SQL o elementy programowania proceduralnego i obiektowego. PL/SQL umożliwia wykorzystanie: zmiennych i stałych struktur
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 6. Co to są wyjątki? Co to są wyjątki? 2010-12-02
Plan wykładu Wyjątki Deklarowanie, zgłaszanie, obsługa wyjątków Przekazywanie wyjątków Funkcje Procedury BAZY DANYCH II WYKŁAD 6 dr inż. Agnieszka Bołtuć Co to są wyjątki? Co to są wyjątki? Wyjątki są
Bardziej szczegółowoTrigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie.
Temat: Wyzwalacze (triggery). Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. W poniższym przykładzie definiujemy tablicę a następnie trigger
Bardziej szczegółowoHurtownia Świętego Mikołaja projekt bazy danych
Aleksandra Kobusińska nr indeksu: 218366 Hurtownia Świętego Mikołaja projekt bazy danych Zaprezentowana poniżej baza jest częścią większego projektu bazy danych wykorzystywanej w krajowych oddziałach wiosek
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 9. Dynamiczny SQL. Dynamiczny SQL 2012-01-20
Plan wykładu BAZY DANYCH II WYKŁAD 9 Dynamiczny SQL, NDS, EXECUTE IMMEDIATE, Pakiet DBMS_SQL, Obiekty w PL/SQL, Tworzenie, wywoływanie, dziedziczenie, etc. dr inż. Agnieszka Bołtuć Dynamiczny SQL Pozwala
Bardziej szczegółowoProcedury Funkcje Pakiety. Tworzenie procedury
Podprogramy tworzy się za pomocą instrukcji CREATE. Tworzenie procedury Składnia CREATE [OR REPLACE] PROCEDURE nazwa_procedury [(param1 [IN OUT IN OUT] typ_danych [:= DEFAULT wyrażenie], param2 [IN OUT
Bardziej szczegółowoTechnologie baz danych WYKŁAD 7: Wyjątki
Wydział Informatyki Politechnika Białostocka Obsługa wyjątków Technologie baz danych WYKŁAD 7: Wyjątki [] [] Agnieszka Oniśko, Małgorzata Krętowska TBD-wyjątki 1 TBD-wyjątki 2 Sposoby powstania sytuacji
Bardziej szczegółowoProgramowanie w SQL. definicja bloku instrukcji BEGIN...END, warunkowe wykonanie instrukcji IF...ELSE, wyrażenie CASE,
Programowanie w SQL definicja bloku instrukcji BEGIN...END, warunkowe wykonanie instrukcji IF...ELSE, wyrażenie CASE, kontynuacja działania od instrukcji za podaną etykietą GOTO etykieta, wyjście bezwarunkowe
Bardziej szczegółowo1. Wyzwalacze BD (ang. triggers)
1. Wyzwalacze BD (ang. triggers) Wyzwalacz bazy danych jest procedurą składowaną w bazie powiązaną z jedną konkretną tablicą. Z pojedynczą tablicą może być związane wiele wyzwalaczy, natomiast pojedynczy
Bardziej szczegółowoZarządzanie bazą danych. Bazy Danych i Systemy informacyjne Wykład 4. Piotr Syga
Bazy Danych i Systemy informacyjne Wykład 4 Piotr Syga 26.10.2018 Procedury review Przypomnienie składni procedur Tworzenie DELIMITER $$ CREATE PROCEDURE zliczacz (OUT wynik INT) BEGIN operacje... END
Bardziej szczegółowoOracle10g: Programowanie w PL/SQL
Oracle10g: Programowanie w PL/SQL OPIS: Szkolenie dotyczy użytkowników Oracle8i, Oracle9i i Oracle10g. Ten kurs pozwala zrozumieć zalety tego potężnego narzędzia programowania do PL/SQL. Studenci uczą
Bardziej szczegółowoĆwiczenie 13 PL/SQL. Język PL/SQL procedury, funkcje, pakiety, wyzwalacze
Ćwiczenie 13 PL/SQL Język PL/SQL procedury, funkcje, pakiety, wyzwalacze Ćwiczenie 13 PL/SQL Niniejsze ćwiczenie zaprezentuje składowane w bazie danych programy PL/SQL: procedury, funkcje, pakiety oraz
Bardziej szczegółowoZaawansowane bazy danych i hurtownie danych semestr I, st. niestacjonarne
Ważne informacje Wydział Informatyki Politechnika Białostocka Zaawansowane bazy danych i hurtownie danych semestr I, st. niestacjonarne 1. CEZ 2. http://aragorn.pb.bialystok.pl/~aonisko: Szczegółowy plan
Bardziej szczegółowoW PostgreSQL mamy do dyspozycji nie tylko funkcje wbudowane, ale również możemy tworzyć własne. Są one zapisywane w tabeli systemowej pg_proc.
PROCEDURY W PostgreSQL mamy do dyspozycji nie tylko funkcje wbudowane, ale również możemy tworzyć własne. Są one zapisywane w tabeli systemowej pg_proc. \df Aby wyświetlić wszystkie funkcje z argumentami
Bardziej szczegółowoOBSŁUGA WYJĄTKÓW. Mechanizm języka PL/SQL. Wyjątki:
OBSŁUGA WYJĄTKÓW W języku PL/SQL zaimplementowano obsługę błędów za pomocą: mechanizmu wyjątków programów obsługi wyjątków w tzw. sekcji obsługi wyjątków. Wyjątki mogą być związane z: błędami systemu Oracle
Bardziej szczegółowoInstrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.
Rodzaje triggerów Triggery DML na tabelach INSERT, UPDATE, DELETE Triggery na widokach INSTEAD OF Triggery DDL CREATE, ALTER, DROP Triggery na bazie danych SERVERERROR, LOGON, LOGOFF, STARTUP, SHUTDOWN
Bardziej szczegółowoWyzwalacze (triggery) Przykład
Wyzwalacze (triggery) Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. W poniższym przykładzie definiujemy tablicę, a następnie trigger związany
Bardziej szczegółowoJęzyk PL/SQL. Rozdział 3. Obsługa błędów wykonania Wyjątki predefiniowane i użytkownika, zgłaszanie i obsługa wyjątków.
Język PL/SQL. Rozdział 3. Obsługa błędów wykonania Wyjątki predefiniowane i użytkownika, zgłaszanie i obsługa wyjątków. 1 Komunikaty o błędach serwera Oracle Wykonanie niepoprawnej operacji w trakcie działania
Bardziej szczegółowoZASTOSOWANIE PROCEDUR, FUNKCJI I PAKIETÓW
ZASTOSOWANIE PROCEDUR, FUNKCJI I PAKIETÓW Położenie podprogramów Jak wiemy, podprogramy i pakiety jako bloki nazwane, mogą być składowane w słowniku danych. Podprogram najpierw tworzy się za pomocą polecenia
Bardziej szczegółowoKolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Rozszerzenie obiektowe w SZBD Oracle
Rozszerzenie obiektowe w SZBD Oracle Cześć 2. Kolekcje Kolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Malinowski Nowak Kowalski tablica zagnieżdżona (ang.
Bardziej szczegółowoInstrukcje SQL można podzielić na pięć kategorii, które zostały przedstawione w poniższej tabeli.
SQL W JĘZYKU PL/SQL Strukturalny język zapytań SQL określa sposób manipulowania danymi w bazie danych. Konstrukcje proceduralne języka PL/SQL stają się bardziej użyteczne w połączeniu z mocą przetwarzania
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 9. Pakiety w języku PL/SQL
Wykład 9. Pakiety w języku PL/SQL Pakiety (ang. packages): podobnie jak podprogramy, zaliczamy do bloków nazwanych języka PL/SQL, zostały zaczerpnięty z języka ADA, lecz w stosunku do pakietu tego języka
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ół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ółowoWykład V. Indeksy. Struktura indeksu składa się z rekordów o dwóch polach
Indeksy dodatkowe struktury służące przyśpieszeniu dostępu do danych o użyciu indeksu podczas realizacji poleceń decyduje SZBD niektóre systemy bazodanowe automatycznie tworzą indeksy dla kolumn o wartościach
Bardziej szczegółowoAda-95. Dariusz Wawrzyniak
Część I Wskaźniki Plan Typy wskaźnikowe i obiekty wskazywane 1 Typy wskaźnikowe i obiekty wskazywane 2 3 4 Plan Typy wskaźnikowe i obiekty wskazywane 1 Typy wskaźnikowe i obiekty wskazywane 2 3 4 Wskaźniki
Bardziej szczegółowoPlan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza
4 Budowa prostych formularzy, stany sesji, tworzenie przycisków Plan Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 2 Formularz i jego typy Tworzenie formularza
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 7 Dynamiczny SQL i PL/SQL Pierwotny dynamiczny SQL Pierwotny dynamiczny DDL Pierwotny dynamiczny DML i SELECT Pakiet DBMS_SQL Transakcje
Bardziej szczegółowo