Oracle
zaawansowany Programiści Oracle

Zaawansowane programowanie w języku PL/SQL

4 dni online z trenerem, na sali OPZ_PL
Cel szkolenia
Szkolenie pozwala poznać zaawansowane aspekty programowania bazy danych Oracle. Uczestnicząc w nim przećwiczysz mechanizmy pozwalające tworzyć wydajne systemy informatyczne w oparciu o język PL/SQL takie jak np. bezpieczne blokowanie, kursory modyfikowalne itd. Zobaczysz sposób działania rozwiązań klasy enterprise oraz poznasz zagadnienia związane z bezpieczeństwem. Dowiesz się jak tworzyć kod niewrażliwy na próby włamania bądź śledzący i audytujący działania użytkowników. Zapoznasz się z mechanizmami wykorzystywanymi w rozbudowanych systemach bazodanowych i nauczysz się je samodzielnie używać. Poznasz także API PL/SQL'a umożliwiające np. obsługę potoków lub protokołów sieciowych. Kurs pozwala na pogłębienie i przećwiczenie wiedzy oraz umożliwia zostanie ekspertem w dziedzinie tworzenia zaawansowanego oprogramowania w warstwie bazy danych.
Korzyści
Szkolenie nauczy Cie zaawansowanych technik programowania bazy danych Oracle i pozwoli stać się ekspertem w tej dziedzinie. Przećwiczysz rozwiązania stosowane w systemach największych firm i instytucji (np. banków) tak aby jakość i efektywność tworzonego przez Ciebie oprogramowania była jak najwyższa.
Wymagania wstępne
Powinieneś programować w języku PL/SQL oraz dobrze znać język SQL dla bazy danych Oracle
Program szkolenia
  1. Typy danych
    • Wykorzystanie podtypów
    • Typy złożone ? kolekcje, kolekcje wielowymiarowe
    • Metody kolekcji
    • Kolekcje rzadkie i gęste
    • Kolekcje permanentne
    • Rekordy
  2. Zarządzanie transakcjami
    • Reguły ACID
    • Blokowanie optymistyczne i pesymistyczne
    • Blokowanie wierszy w zapytaniach złączeniowych
    • Bezpieczne blokowanie wierszy
    • Stracony update
    • Blokowanie tabel
    • Zachowanie transakcji w reakcji na błąd
    • Podprogramy sprzątające w razie błędu
    • Poziomy izolacji transakcji
    • Transakcje autonomiczne
    • Widzialność transakcji autonomicznych
  3. Obsługa błędów
    • Propagacja wyjątków
    • Wyjątki użytkownika
    • Przerzucanie wyjątków
    • Wyjątki w miejscach specjalnych
    • Stos wywołań
    • Stos błędu
  4. Przetwarzanie danych
    • Kursory statyczne, przetwarzanie dużych zbiorów danych
    • Wyrażenia kursorowe
    • Kursory blokujące, sortujące i zmieniające dane
    • Zwracanie danych przez instrukcje DML
    • Kursory dynamiczne, referencyjne słabe i silne
    • Zmienne kursorowe
    • Przekazywanie kursora do podprogramu, zwracanie kursora
    • Przetwarzanie masowe (tablicowe), z limitowaniem
  5. Pakiety i podprogramy
    • Pakiety, specyfikacja, ciało
    • Sekcja inicjalizacyjna pakietu
    • Czas życia pakietu
    • Hermetyzacja, zmienne globalne
    • Pakiety wykorzystywane seryjnie
    • Zarządzanie ostrzeżeniami
    • Obrona przed wstrzykiwaniem SQL'a (SQL injection)
    • Wykorzystanie własnych funkcji w SQL'u
    • Poziomy czystości podprogramów
    • Poziomy czystości a transakcje autonomiczne
    • Zmiana kontekstu uprawnień i schematu dla podprogramu
    • Przekazywanie parametrów do podprogramów przez wartość i referencje
    • Generatory danych, funkcje strumieniowe, nieskończone generatory
    • Odwołanie do programów napisanych w C z poziomu PL/SQL'a
  6. Programowanie obiektowe
    • Hermetyzacja
    • Dziedziczenie
    • Statyczność
    • Polimorfizm
    • Kontekst uprawnień obiektów
  7. Mechanizmy zaawansowane
    • Linki bazodanowe
    • Kontekst uprawnień linku bazodanowego
    • Obsługa dużych obiektów binarnych (LOB'ów)
    • Tablice zewnętrzne
    • Funkcje agregujące zdefiniowane przez użytkownika
    • Zależności lokalne i zdalne między programami
    • Profilowanie
    • Śledzenie kodu
    • Kompilacja warunkowa
  8. API PL/SQL'a
    • Standardowe wyjście
    • Potoki systemowe
    • Protokół HTML
    • Protokół HTTP
    • Protokół SMTP
    • Zarządzanie powiadomieniami (alertami)
    • Wrapowanie kodu i DDL

Najbliższe terminy

Ładowanie terminów…

Formularz zapisu

Dane podane w formularzu posłużą do wystawienia faktury proforma. Po otrzymaniu zgłoszenia skontaktujemy się w ciągu 1 dnia roboczego.

Klauzula informacyjna RODO

Administratorem moich danych osobowych jest Dataconsulting Services sp. z o.o. z siedzibą w Warszawie (00-843), Rondo Daszyńskiego 2B, wpisaną do rejestru przedsiębiorców Krajowego Rejestru Sądowego prowadzonego przez Sąd Rejonowy dla m.st. Warszawy w Warszawie, XIII Wydział Gospodarczy Krajowego Rejestru Sądowego, pod numerem KRS: 0001017491, NIP: 5273040797, REGON: 524385129, z kapitałem zakładowym w wysokości 5.000,00 zł (dalej: „Spółka").

Ze Spółką kontaktować się można listownie (na adres podany wyżej), mailowo: biuro@dataconsulting.pl, lub telefonicznie: +48 (22) 398 47 81.

  • moje dane osobowe przetwarzane będą w celu nawiązania kontaktu ze mną przez Spółkę, na podstawie art. 6 ust. 1 lit. a Rozporządzenia Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE („RODO"),
  • moje dane osobowe nie będą przekazywane podmiotom zewnętrznym, państwom trzecim spoza Europejskiego Obszaru Gospodarczego ani organizacjom międzynarodowym,
  • moje dane osobowe będą przechowywane przez okres niezbędny do nawiązania ze mną kontaktu przez Spółkę jednak nie dłużej niż do momentu cofnięcia zgody na ich przetwarzanie,
  • posiadam prawo dostępu do treści moich danych oraz prawo ich sprostowania, usunięcia, ograniczenia przetwarzania oraz prawo do przeniesienia moich danych,
  • mam możliwość wycofania zgody na przetwarzanie moich danych osobowych, a wycofanie zgody nie wpływa na zgodność z prawem przetwarzania danych osobowych, którego dokonano na podstawie zgody przed jej wycofaniem,
  • przysługuje mi uprawnienie wniesienia skargi do Prezesa Urzędu Ochrony Danych Osobowych.

Podanie danych osobowych jest dobrowolne, jednak jest niezbędne do nawiązania ze mną kontaktu przez Spółkę.

Pola oznaczone * są wymagane.