PL/SQL kompilacja warunkowa

1 PL/SQL kompilacja warunkowaNowinki z Oracle 10g Filip J...
Author: Sebestyjan Mendyka
0 downloads 3 Views

1 PL/SQL kompilacja warunkowaNowinki z Oracle 10g Filip Jakubowski-Drzewiecki

2 Zalety kompilacji warunkowejUmożliwia włączenie kodu debagującego (np. komunikatów.) przy testach i wyłączenie na produkcji. Pozwala na korzystanie z linii kodu specyficznych dla wykorzystywanego systemu operacyjnego i swobodną jego podmianę podczas migracji. Filip Jakubowski-Drzewiecki

3 Nowe podejście do programowania w PL/SQLNowe podejście do Unit testów Możemy uruchamiać warunkowo programy/procesy testujące Symulacje zachowań za pomocą zastępczych obiektów (Mock objects) Implementacja alternatywnych zachowań programu Dla nieprzenaszalnych części kodu Dla rozpatrzenia kilku podejść Możliwość nie uwzględniania aseracji w aplikacji produkcyjnej Filip Jakubowski-Drzewiecki

4 Konstrukcje kompilacji warunkowejDyrektywa typu selection Dyrektywa typu inquiry Dyrektywa typu error directive Pakiet DBMS_DB_Version Filip Jakubowski-Drzewiecki

5 Dyrektywa typu selectionObowiązek użycia statycznych zmiennych Warunki nie mogą się zmieniać w czasie kompilacji (zawsze true lub zawsze false) Filip Jakubowski-Drzewiecki

6 Filip Jakubowski-DrzewieckiSelection c.d. Nie kompilowany kod nie jest brany pod uwagę. Prekompilator reaguje jedynie na poprawnie sformułowaną składnie. Filip Jakubowski-Drzewiecki

7 Dyrektywa typu inquiryFlagiCC Możliwość użycia zmiennych Filip Jakubowski-Drzewiecki

8 Filip Jakubowski-DrzewieckiDyrekywa typu error Przyjmuje jako argument łańcuch znaków Filip Jakubowski-Drzewiecki

9 Pakiet DBMS_DB_VersionMożliwość uzależnienia niektórych rozwiązań od wykorzystywanej wersji bazy (przydatne np. w aplikacjach rozproszonych) Filip Jakubowski-Drzewiecki

10 Uzależnienie kompilowanego kodu od dostępnych rozszerzeńWyzwalacz (trigger) DDL może utworzyć lub podmienić jednostkę kompilacji Możliwość budowania kompleksowych aplikacji korzystających z dostępnych udogodnień na docelowym środowisku Filip Jakubowski-Drzewiecki

11 Pozostałe nowinki Oracla 10gAplikacje wykorzystujące intensywnie PL/SQL  działają ok. 2 razy szybciej niż gdyby były uruchomione na 9i Będą również działały ponad 3 razy szybciej niż na 8i. Filip Jakubowski-Drzewiecki

12 Filip Jakubowski-DrzewieckiNowinki Składniowe Typy danych binary_float i binary_double (standard IEEE). Wsparcie wyrażeń regularnych regexp_like, regexp_instr, regexp_substr i regexp_replace Operacje na zbiorach typu: nested table equals, union, intersect, except, member i inne. Możliwość wyboru cudzyzłowu przez użytkownika ‘/”. Wyrażenia typu: indices of ; values of syntax for / forall. binary_integer wypiera pls_integer Filip Jakubowski-Drzewiecki

13 Filip Jakubowski-DrzewieckiOptymalizacja PL/SQL Optymalizator może przearanżować wykonywany kod aby zwiększyć efektywność aplikacji Filip Jakubowski-Drzewiecki

14 Nowe narzędzia / pakietyUtl_Mail. – Umożliwia wysyłanie i i czyni przeźroczysty (w przeciwieństwie do starego poakietu Utl_Smtp) protokuł SMTP.  Utl_Compress. – Daje możliwość pakowania i rozpakowywania elementów jak np. LOB czy BLOB Dbms_Warning – nowa funkcjonalność dająca kontrolę kategorii i zarządzania błędami Filip Jakubowski-Drzewiecki

15 Filip Jakubowski-DrzewieckiŹródło Filip Jakubowski-Drzewiecki