oracle database application development
W tym samouczku opisano tworzenie aplikacji bazodanowych Oracle, Oracle SQL, PL / SQL i Oracle APEX, a także ich funkcje, korzyści i przykładowe programy:
W poprzednim samouczku Przewodnik po hurtowni danych , z Kompletna seria ORACLE , poznaliśmy Oracle Data Warehouse z korzyściami, architekturą, ryzykiem i porównaniem z systemem OLTP.
W miarę jak zbliżamy się do cyfryzacji, branże koncentrują się obecnie na tworzeniu aplikacji internetowych wspierających komercjalizację. Aplikacje te są w większości oparte na bazach danych, które w dynamiczny sposób zapewniają użytkownikom informacje w czasie rzeczywistym.
Aby poradzić sobie z tymi istotnymi danymi, Oracle opracował pewne techniki tworzenia baz danych, które mogą uczynić tworzenie stron internetowych łatwymi i bezpiecznymi.
Czego się nauczysz:
Tworzenie aplikacji bazodanowych Oracle
W tym artykule poznamy funkcje oferowane przez Oracle Database, które ułatwiają tworzenie aplikacji.
Oracle SQL
SQL oznacza Strukturalny język zapytań . Jest to język oparty na zestawie, obsługiwany przez większość relacyjnych baz danych, takich jak Oracle, MS SQL Server, MySQL itp. Ten język jest celowo zaprojektowany do zarządzania danymi w bazie danych. Korzystając z tego języka, użytkownicy mogą wykonywać różne operacje na danych, takie jak pobieranie danych, usuwanie danych, manipulowanie danymi itp.
Aby wykonać określone zadania, działa jako interfejs do bazy danych, a instrukcje stają się instrukcjami wysyłanymi do DB. Instrukcje te zapewniają użytkownikom możliwość kontrolowania danych w bazie danych.
Użytkownicy mogą również uzyskiwać dostęp do baz danych pośrednio, używając różnych narzędzi dostarczonych przez Oracle lub za pośrednictwem aplikacji programowych, pod warunkiem, że istnieją uprawnienia dostępu. Ale te aplikacje lub narzędzia muszą używać instrukcji SQL tylko na zapleczu podczas wysyłania żądań użytkowników do bazy danych.
Operacje SQL
Za pomocą tego języka użytkownik może wykonywać różne operacje wymienione poniżej:
# 1) Operacja zapytań o dane
- Używając WYBIERZ instrukcja, użytkownik może wysłać zapytanie do dowolnej tabeli w bazie danych w celu pobrania danych.
# 2) Operacja sortowania danych
- ZAMÓW PRZEZ Instrukcja pomaga użytkownikom sortować wyniki zapytania w porządku rosnącym lub malejącym.
# 3) Operacje manipulacji danymi
- WSTAWIĆ Instrukcja umożliwia użytkownikom wstawianie nowych danych do tabeli bazy danych.
- AKTUALIZACJA Instrukcja umożliwia użytkownikom aktualizację istniejących danych w tabeli bazy danych.
- KASOWAĆ Instrukcja pomaga użytkownikowi w usuwaniu wierszy z tabeli.
# 4) Operacje definiujące dane
- UTWÓRZ TABELĘ Instrukcja umożliwia użytkownikom tworzenie nowych tabel w bazie danych.
- ALTER TABELA Instrukcja pozwala użytkownikowi modyfikować strukturę istniejącej tabeli.
- DROP TABLE Instrukcja umożliwia użytkownikom samodzielne usuwanie tabel z bazy danych.
# 5) Kontrola dostępu do bazy danych i obiektów bazy danych
- DOTACJA Instrukcja pomaga administratorom w nadawaniu uprawnień do obiektów DB użytkownikom końcowym.
- UNIEWAŻNIĆ Polecenie pomaga w usuwaniu nadanego powyżej dostępu do obiektów DB.
Ponieważ SQL jest w stanie zarządzać danymi, nauka tego języka jest niezbędna nie tylko dla programistów baz danych, ale obsługuje także inne profile zawodowe, takie jak administratorzy baz danych, analitycy jakości, architekci i subskrybenci.
Aby wspierać użytkowników SQL, firma Oracle opracowała kilka narzędzi, które mogą ułatwić tworzenie SQL, takich jak SQL * Plus, SQL Developer Oracle JDeveloper, Oracle HTML DB itp.
Dostępne są różne rozszerzenia języka SQL, takie jak Java, PL / SQL itp., Które dodały do języka SQL koncepcje programowania proceduralnego i obiektowego.
W ciągu ostatnich czterech dekad nastąpił duży postęp w dziedzinie przetwarzania danych i wprowadzono na rynek wiele nowych technik. SQL wciąż zdołał przetrwać w tym okresie i ostatecznie ewoluował jako ulepszona technologia.
Dlaczego SQL jest tak atrakcyjny? Dlaczego nadal jest to najbardziej preferowana i jedna z odnoszących sukcesy technologii przetwarzania danych?
Trwały sukces SQL jest wypadkową czynników wymienionych poniżej:
1) Solidna konstrukcja
Dane są gromadzone do celów analitycznych, a analiza ta może być umieszczona w ramach zestawu danych lub wielu wierszy danych, a nie pojedynczego wiersza danych. Pewne zasady, znane jako Algebra relacyjna , zostały zdefiniowane w celu regulowania konstrukcji i wykonywania zapytań.
Składa się z 4 operatorów:
- Występ: Dane w relacyjnej bazie danych są zapisywane w tabeli w postaci wierszy i kolumn. Projekcje to pierwsze elementy identyfikowane podczas wykonywania zapytania. Są to wybrane kolumny w tabeli, dla której zaprojektowano zapytanie. O projekcjach mówi się w pierwszej części zapytania SQL, czyli w instrukcji SELECT.
- Filtr: Po zidentyfikowaniu prognoz w ramach kwerendy następnym krokiem byłoby zidentyfikowanie wierszy, które są istotne dla zapytania . Filtry są wymienione w klauzuli WHERE zapytania i będą identyfikować wiersze, które mają być uwzględnione w wynikach.
- Przystąp: Większość operacji wymaga odpytywania wielu zbiorów danych, więc łączenia stają się koniecznością. Łączenia można wykonywać na co najmniej dwóch zestawach danych, łącząc wymagane pola w zapytaniu na podstawie relacji logicznych. Dostępne są różne typy połączeń, takie jak INNER JOIN, OUTER JOIN, SELF JOIN i CARTESIAN PRODUCT.
- Agregat: Agregacja danych to jedna z najczęściej wykonywanych czynności podczas analizy danych, ponieważ podsumowanie danych jest zawsze wymagane do podjęcia decyzji biznesowej. W związku z tym agregację danych można przeprowadzić przy użyciu różnych funkcji, takich jak SUMA, COUNT, ŚREDNIA, MIN, itp.
# 2) Przejrzysta optymalizacja
Baza danych Oracle posiada bogaty zestaw technik optymalizacji SQL. SQL Query Optimizer określa najbardziej efektywną i wydajną metodę wykonywania instrukcji poprzez generowanie najlepszego planu wykonania.
# 3) W całej ewolucji
SQL pozostawał na rynku przez dziesięciolecia ze względu na ciągły rozwój w różnych obszarach. Całość została wzbogacona o funkcje wymienione poniżej.
c ++ 11 pytań do wywiadu
- Ulepszony o nowe techniki przetwarzania danych.
- Ulepszony o nowe obliczenia matematyczne.
- Włączono możliwość mapowania kodu z nadchodzącymi typami danych.
- Ulepszone, aby obsługiwać źródła danych, takie jak dokumenty XML i JSON, tabele Hive, pliki HDFS, styl obrazu (BLOB i CLOB) oraz obiekty przestrzenne itp.
# 4) Język oparty na standardach
W 1986 roku język SQL stał się standardem ANSI i od tego czasu przez te wszystkie lata rozwijał się i pojawiał z wieloma nowymi wersjami. Standaryzacja pomogła SQL w
- Zachowanie przenośności aplikacji w różnych bazach danych bez większych modyfikacji kodu.
- Zapewnienie wstecznej zgodności i ciągłości kodu. Kod SQL, który został napisany lata temu, nadal działa również dzisiaj bez większych zmian w kodzie.
Oracle PL / SQL
Jak czytaliśmy wcześniej, SQL jest jednym z języków zorientowanych na zbiory, opracowanym w celu uzyskania dostępu do danych przechowywanych w relacyjnej bazie danych. Wszelkie aplikacje zbudowane w oparciu o Oracle Database wymagałyby tylko instrukcji SQL, aby uzyskać dostęp do zawartości bazy danych.
Ale będąc językiem nieproceduralnym, SQL nie jest wystarczający do zaimplementowania logiki biznesowej typu end-to-end dla dowolnej aplikacji, dlatego wprowadzono PL / SQL.
Zalecana lektura = >> Samouczki języka PL SQL
W PL / SQL PL oznacza Język proceduralny podczas gdy SQL oznacza Strukturalny język zapytań . PL / SQL to rozszerzenie języka SQL wspierające takie funkcje, jak podejmowanie decyzji, różne iteracje i inne funkcje proceduralne, w których brakuje SQL.
Łączy język SQL z nierodzimymi poleceniami proceduralnymi, takimi jak (instrukcje warunkowe IF, przypisania, pętle itp.), A tym samym zwiększa możliwości języka SQL.
Używanie języka PL / SQL do tworzenia aplikacji jest korzystne w następujący sposób:
- Lepsza integracja z SQL: PL / SQL jest dobrze zintegrowany z SQL i obsługuje zarówno dynamiczny, jak i statyczny SQL.
- Zwiększyć wydajność: W przeciwieństwie do SQL, w którym instrukcje są wykonywane pojedynczo, PL / SQL wysyła od razu cały blok instrukcji do wykonania, co zmniejsza ruch w sieci, a tym samym zwiększa wydajność.
- Oszczędza czas rozwoju: Ze względu na dostępność przydatnych funkcji PL / SQL, takich jak wyjątkowa obsługa, ukrywanie danych, zorientowane obiektowo typy danych i hermetyzacja, programiści mogą zaoszczędzić dużo czasu, którego potrzebowali na zaprojektowanie i debugowanie kodu. Oferuje również dostęp do pakietów zdefiniowanych w systemie, z których mogą korzystać twórcy aplikacji.
- Ruchliwość: Aplikacje zaprojektowane przy użyciu języka PL / SQL są całkowicie przenośne w każdym systemie operacyjnym.
- Bezpieczeństwo: PL / SQL zapewnia wysoki poziom bezpieczeństwa swoich aplikacji .
Podstawowe jednostki programu PL / SQL
PL / SQL to jednostka składająca się z wielu instrukcji SQL umieszczonych razem w bloku i wykonywanych jako jedno. Te jednostki programu mogą być kompilowane przez Oracle Database Server i zapisywane w bazie danych.
Program PL / SQL został podzielony na 3 sekcje:
- Deklaracja: Ta sekcja zawiera deklaratywne instrukcje, które deklarują elementy kodu, takie jak zmienne, stałe itp., Które mogą być używane w bloku kodu. Ta sekcja jest opcjonalna.
- Wykonywalne: Zawiera instrukcje kodu, które będą uruchamiane za każdym razem, gdy program zostanie wykonany. Ta sekcja jest obowiązkowa dla programu PL / SQL.
- Wyjątkowa obsługa: Ta sekcja zawiera wyjątkowe scenariusze zgłoszone podczas wykonywania programu za pomocą instrukcji „catch” lub „trap”. Ta sekcja jest opcjonalna.
Biorąc pod uwagę powyższe sekcje, program PL / SQL jest identyfikowany za pomocą czterech słów kluczowych DEKLARUJ, POCZĄTEK, WYJĄTEK & KONIEC .
Podstawowa składnia bloku PL / SQL:
DECLARE BEGIN EXCEPTION END;
Zobaczmy różne przykłady, aby uzyskać jaśniejszy obraz.
# 1) TYLKO WYKONALNE
Poniższy program ma tylko sekcję wykonywalną i wywoływana jest procedura DBMS_OUTPUT.PUT_LINE w celu wyświetlenia tekstu na ekranie wyjściowym.
BEGIN DBMS_OUTPUT.put_line ('Hello!'); END;
# 2) ZADEKLAROWAĆ I WYKONAĆ
Tutaj program ma sekcję deklaracji, w której zadeklarowano zmienną typu VARCHAR2 (50), która przechowuje ciąg „Hello!”.
DECLARE text VARCHAR2 (50):= 'Hello!'; BEGIN DBMS_OUTPUT.put_line (text); END;
# 3) ZADEKLAROWAĆ, WYKONALNĄ I WYJĄTKOWĄ OBSŁUGĘ
Ten program ma wszystkie sekcje, tj. ZADEKLARUJ, WYKONALNE i OBSŁUGA WYJĄTKÓW.
DECLARE text VARCHAR2 (50):= 'Hello'; BEGIN DBMS_OUTPUT.put_line (text); EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line (SQLERRM); END;
W ten sposób można konstruować programy PL / SQL z różnymi sekcjami.
Po skonstruowaniu programy te powinny być przechowywane w bazie danych, aby można je było wywoływać w dowolnym momencie. Ale sposób, w jaki powyższe bloki kodu są zapisywane bez nazw odwołań, nie jest zorganizowany, dlatego możemy je nazwać blokami kodu anonimowego.
Używanie anonimowych bloków nie spełnia celu tworzenia dużych i złożonych aplikacji, ponieważ wiązałoby się to z dużą złożonością kodu i dużą łatwością utrzymania.
Oto koncepcja nazwanych bloków, które są również znane jako podprogramy. Podprogramy mogą mieć unikalne nazwy referencyjne, pod którymi mogą być przechowywane w bazie danych. Można wywołać te programy, używając ich nazw referencyjnych.
Struktura nazwanego bloku byłaby taka sama, jak bloku anonimowego, z tym wyjątkiem, że nie będzie zaczynał się słowem kluczowym „DECLARE”, a raczej słowem kluczowym „CREATE”. Słowo kluczowe „CREATE” nakazuje kompilatorowi utworzenie i zapisanie bloku kodu jako obiektu bazy danych, który można wywołać później.
Nazwane bloki mogą mieć 2 typy:
- Funkcje.
- Procedury składowane.
DO funkcjonować jest zdefiniowany jako nazwany blok, znany również jako podprogram lub podprogram. Celem użycia funkcji jest wykonanie obliczeń i zawsze zwróci wartość.
Możemy stworzyć funkcję jak poniżej:
CREATE [OR REPLACE] FUNCTION function_name [(parameter [,parameter]) ] RETURN return_data_type IS|AS --declaration statements BEGIN -- executable statements Return return_variable; EXCEPTION -- exception-handling statements END;
Procedury składowane są również nazywane blokami zapisanymi w celu wykonania zadania. Różnią się one od funkcji tym, że procedury składowane nie mogą być używane ani wywoływane za pomocą instrukcji SQL, podczas gdy można używać funkcji. Ponadto procedury mogą zwracać więcej niż jedną wartość, podczas gdy funkcje mają zwracać jedną wartość.
Możemy tworzyć procedury składowane, jak poniżej:
CREATE [OR REPLACE] PROCEDURE procedure_name [(parameter [,parameter]) ] IS --declaration statements BEGIN --executable statements EXCEPTION --exception handling statements END;
Oracle Application Express (APEX)
APEX to platforma do tworzenia aplikacji zaprojektowana przez Oracle, która umożliwia światowym branżom radzenie sobie z ich problemami biznesowymi. Jest to narzędzie, które pozwala organizacjom prezentować swoje dane na rozszerzalnej platformie za pośrednictwem aplikacji internetowych.
Za pomocą APEX można budować różnorodne aplikacje, od prostej aplikacji „dostępu do arkusza kalkulacyjnego” po krytyczne aplikacje dostępne 24 godziny na dobę, 7 dni w tygodniu. Dzięki tej platformie firma Oracle skupiła się na zapewnieniu programistom różnorodnych opcji rozwoju i pozostawieniu użytkownikom wyjątkowych wrażeń.
Narzędzie Oracle APEX jest wzbogacone o wiele funkcji i funkcjonalności i odniosło sukces w wielu aspektach, takich jak interfejs użytkownika, dane, bezpieczeństwo, monitorowanie itp. Zapewnia elastyczność użytkownikom, ponieważ nie jest narzędziem złożonym. Aby pracować nad Oracle APEX, programista nie musi być ekspertem technicznym, ponieważ APEX oferuje wiele pomocy i przewodników.
Funkcje są wymienione poniżej:
# 1) Przyjazny dla użytkownika interfejs
Oracle APEX to nieskomplikowane i łatwe w użyciu narzędzie z przyjaznym dla użytkownika interfejsem znanym jako Motyw uniwersalny . Ten motyw umożliwia programistom tworzenie samoreagujących i interaktywnych aplikacji internetowych, ponieważ jest bardzo bogaty i pomocny pod względem prowadzenia użytkownika przez proces tworzenia aplikacji. Deweloper nie musi być ekspertem w zakresie języków kodowania, takich jak CSS, HTML czy Javascript.
# 2) Oparte na danych
To narzędzie jest bardzo wydajne i obsługuje różnorodne procesy budowania aplikacji, które mogą być wykorzystywane przez branże do prezentowania danych w wymagany sposób. Jest to narzędzie oparte na danych, które umożliwia wydajne przetwarzanie i manipulowanie danymi. Umożliwia każdemu użytkownikowi dostosowywanie raportów w unikalny sposób za pomocą komponentu Interactive Report.
# 3) Bezpieczeństwo
Bezpieczeństwo jest obecnie jednym z kluczowych wymagań każdej branży. Oracle zaprojektował APEX jako zdolny do dostarczania wysoce zabezpieczonych aplikacji poprzez ścisłe przestrzeganie standardów bezpieczeństwa.
# 4) Przenośność
Oracle APEX jest narzędziem przenośnym, a użytkownik może korzystać z tej funkcji zgodnie z wymaganiami biznesowymi. Mogą wdrożyć to narzędzie w dowolnym miejscu na świecie, nawet w chmurze, pod warunkiem, że jest wdrożona baza danych Oracle.
c ++ pytania i odpowiedzi
# 5) Monitorowanie
Oracle APEX oferuje funkcje monitorowania i rejestrowania w celu identyfikacji wszelkich problemów z wydajnością, problemów z aplikacjami lub prób włamań.
# 6) Globalizacja
Oracle APEX został zaprojektowany w taki sposób, że może obsługiwać różne języki i powiązane środowiska, a tym samym może być używany przez programistów z różnych części świata do tworzenia aplikacji.
Architektura APEX
Oracle APEX ma potężną architekturę, która składa się głównie z 3 warstw.
- Przeglądarka internetowa.
- Średni poziom: ORDS (Oracle Rest Data Services).
- Poziom bazy danych: Baza danych Oracle (APEX).
[wizerunek źródło ]
Przyjrzyjmy się przepływowi żądań, aby zrozumieć, jak to działa.
W tym przypadku żądanie sieciowe zostanie wygenerowane na poziomie przeglądarki, a następnie przesłane do Oracle Rest Data Services czyli ORDS. Ponadto ORDS przekazuje to żądanie do Oracle APEX w bazie danych. Teraz APEX przetworzy żądanie i przekaże odpowiedź z powrotem do ORDS, który przekaże ją z powrotem do przeglądarki. Tak wygląda żądanie w architekturze APEX.
Oracle APEX oferuje szeroką gamę rozwiązań, które pomogły programistom rozwiązywać problemy biznesowe w czasie rzeczywistym. Umożliwia także programistom korzystanie z bibliotek innych firm, które są rozszerzeniem aplikacji APEX. Te rozszerzenia będą ulepszeniami aplikacji, dzięki czemu będą bardziej uprzywilejowane i potężne.
Oprócz wielu zalet to narzędzie ma również kilka ograniczeń. Są one wymienione poniżej:
- Oracle APEX można zainstalować tylko za pomocą narzędzi należących do Oracle i można go wdrożyć wraz z bazą danych Oracle.
- Niewielu hostów internetowych umożliwia hosting Oracle APEX, dlatego APEX ma ograniczone możliwości hostingu.
- Brakuje kontroli wersji, a dostęp do różnych składników aplikacji i ich edytowanie można uzyskać wyłącznie za pomocą interfejsu internetowego.
Wniosek
W tym artykule przedstawiamy różne opcje rozwoju oferowane przez Oracle jak SQL, PL / SQL i Oracle APEX został wprowadzony w prostszy sposób wraz z jego funkcjami, zaletami i ograniczeniami. Mam nadzieję, że dało ci to jasność co do używania narzędzi i języków do tworzenia baz danych.
POPRZEDNIA samouczek | NEXT Tutorial
rekomendowane lektury
- Jak przetestować bazę danych Oracle
- Samouczek dotyczący bazy danych Oracle - co to jest baza danych Oracle?
- Najpopularniejsze pytania do wywiadów Oracle: pytania dotyczące Oracle Basic, SQL, PL / SQL
- Pakiet PL SQL: Samouczek dotyczący pakietu Oracle PL / SQL z przykładami
- Najczęstsze pytania do wywiadów z Oracle Forms and Reports
- Oracle Data Warehouse: architektura hurtowni danych i nie tylko
- Oracle Real Application Testing - rozwiązanie do testowania Oracle DB przed przejściem do produkcji
- Systematyczne sposoby testowania bazy danych Oracle pod kątem pamięci, miejsca i przetwarzania procesora