PROFIL UCZESTNIKA
Kurs przeznaczony jest dla wszystkich, którzy wykorzystują bazę danych Oracle, znają język SQL i chcieliby rozszerzyć funkcjonalności standardowo dostępne w tym środowisku o własne procedury i funkcje czy dowiedzieć się jak zautomatyzować niektóre czynności.
Szkolenie “Programowanie w PL/SQL” wprowadzi Cię tajniki programowania w tym języku, zapoznasz się z zaletami jego użycia. Dowiesz się, jak tworzyć poszczególne bloki PL/SQL kodu w aplikacji, które mogą być współużytkowane przez wiele formularzy i aplikacji do zarządzania danymi.
PROGRAM SZKOLENIA
1. Wprowadzenie
- Krótkie przypomnienie podstaw SQL
- Przygotowanie środowiska programistycznego
- SQL Developer
- SQL Plus
2. Wprowadzenie do PL/SQL
- Czym jest PL/SQL?
- Zalety PL/SQL
- Bloki w PL/SQL
- Komunikaty wyjściowe w PL/SQL
3. Zmienne w PL/SQL
- Zmienne w PL/SQL
- Typy zmiennych i typy danych
- Deklarowanie i inicjalizacja zmiennych
- Atrybut %TYPE
- Dowiązania zmiennych
4. Sterowanie logiką aplikacji w PL/SQL
- Operatory
- Instrukcje warunkowe
- IF THEN ELSE
- IF ELSIF ELSE
- CASE
- Petle
- LOOP
- FOR LOOP
- WHILE LOOP
- Instrukcja GO TO
- Wykorzystanie wbudowanych funkcji PL/SQL
5. Pierwszy program w PL/SQL
- Bloki anonimowe
- Bloki zagłębione
- Wykorzystanie wyrażeń SQL w blokach PL/SQL
- Użycie DML
- Kontrola transakcji
- Klauzula INTO
- Kursory jawne i niejawne - podstawy
- Wykorzystanie atrybutów kursora PL/SQL
6. Typy złożone w PL/SQL
- Kolekcje i rekordy
- Struktura rekordu i Atrybut ROWTYPE
- Rodzaje kolekcji
- Tablice asocjacyjne
7. Kursory
- Składnia
- Kursory niejawne
- Kursory jawne
- Kursory z parametrami
- Praktyczne wykorzystanie kursorów jawych w aplikacji
8. Obsługa wyjątków
- Definiowanie wyjątków
- Nieobsłużone wyjątki
- Przechwytywanie wyjątków i wykorzystanie dostepnych metod obsługi wyjątków
- propagacja wyjątków w blokach zagnieżdżonych
- Kastomowe komunikaty wyjątków
9. Procedury składowane i funkcje
- Wprowadzenie do programowania proceduralnego w PL/SQL
- Procedura a blok anonimowy
- Procedura a funkcja
- Przekazywanie parametrów do procedur i funkcji
- Rodzaje parametrów i sposób ich przekazywania
- Wykorzystanie własnych procedur w kodzie PL/SQL
- Wykorzystanie funkcji w wyrażeniach DML
- Przechwytywanie wyjątków
- Debugowanie procesdur i funkcji
10. Wyzwalacze
- Składnia
- Typy wyzwalaczy
- Włączanie, wyłączanie i kasowanie, kompilowanie wyzwalaczy
- Wyświetlanie informacji na temat wyzwalaczy
- Mutujące tablice (ang. mutating tables)
- Złożone przykłady z tabelami mutującym
11. Pakiety i modularyzacja w PL/SQL
- Wykorzystanie pakietów w PL/SQL
- Składnia i komponenty pakietów
- Publiczne i prywatne składowe pakietów
- Wywoływanie składowych pakietu w kodzie PL/SQL
- Kompilowanie i usuwanie procedur, funkcji i pakietów
- Przeciążanie procedur i funkcje
- Zaawansowane zagadnienia dotyczące pakietów
- Gdzie ORACLE przechowuje źródła PL/SQL
- Wykorzystanie pakietów wbudowanych
12. Zagadnienia zaawansowane
- Dynamiczny SQL
- Wprowadzenie
- Instrukcja EXECUTE IMMEDIATE
- Zmienne kursorowe
- Złożone przykłady użycia zmiennych kursorowych
- Dynamiczny SQL z wykorzystaniem pakietu DBMS_SQL
- Uprawnienia wykonawcze podprogramów i role przypisane pakietom PL/SQL
- Transakcje autonomiczne
- Przekazywanie parametrów przez odniesienie
- Cache'owanie w PL/SQL
- Petle, kursory i "Bulk Operations"
- Optymalizacja z wykorzystaniem PARALLEL ENABLE
- Wykorzystanie międzysesyjnej pamięci podręcznej
- Wykorzystanie klauzuli DETERMINISTIC
- Wykorzystanie klauzuli RETURNING i zbiorczego wiązania z DML
- Optymalizacja SQL
- Plany zapytań i wykorzystanie hintów
- Projektowanie wydajnej architektury bazy danych
PRZEBIEG SZKOLENIA
Forma szkoleń jest zbalansowana i obejmuje wykłady prowadzone przez doświadczonych trenerów z wieloletnią praktyką w branży programistycznej, oraz ćwiczenia na których uczestnicy wykorzystują poznaną wiedzę w sposób praktyczny. Trener jest w stałym kontakcie z Uczestnikiem aby wspierać go w przypadku problemów w wykonywaniu zadania.
CERTYFIKATY
Uczestnicy otrzymują indywidualny certyfikat świadczący o ukończeniu szkolenia.