SQL a PL SQL
SQL (Structured Query Language) to standardowy język do pisania relacyjnych baz danych. SQL to proste instrukcje, które pozwalają na pobieranie, wstawianie, usuwanie, aktualizowanie rekordów zgodnie z potrzebami użytkownika. Po prostu jest to zorientowany na dane język do wybierania i manipulowania zbiorem danych. PL SQL (Procedural Language/Structured Query Language) to proceduralny język rozszerzeń do wprowadzania i manipulowania danymi przez Oracle.
„PL/SQL, proceduralne rozszerzenie SQL firmy Oracle, to zaawansowany język programowania czwartej generacji (4GL). Oferuje nowoczesne funkcje, takie jak enkapsulacja danych, przeciążanie, typy kolekcji, obsługa wyjątków i ukrywanie informacji. PL/SQL oferuje również bezproblemowy dostęp do SQL, ścisłą integrację z serwerem i narzędziami Oracle, przenośność i bezpieczeństwo.”
SQL
Język zapytań strukturalnych (SQL) wymawiany jako „sequel” to język komputerowy bazy danych przeznaczony do zarządzania danymi w systemach zarządzania relacyjnymi bazami danych (RDBMS), pierwotnie oparty na algebrze relacyjnej.
Podstawowym zakresem SQL jest wstawianie danych i wykonywanie aktualizacji, usuwanie, tworzenie schematów, modyfikowanie schematów i kontrola dostępu do danych w bazach danych.
SQL zawiera elementy podzielone na następujące:
Queries - pobieranie danych na podstawie określonych kryteriów. Istnieje kilka słów kluczowych, które można wykorzystać w zapytaniach. (Wybierz, Z, Skąd, Posiadanie, Grupuj według i uporządkuj według)
np: SELECTFROM tabela1 WHERE kolumna1 > warunek ORDER BY kolumna2;
Wyciągi - które mogą kontrolować transakcje, przepływ programu, połączenia, sesje lub diagnostykę
Wyrażenia – które mogą generować;
Wartości skalarne
Tabele składające się z kolumn i wierszy danych
Predykaty - Określ warunki, które mogą być oceniane jako wartości logiczne SQL (prawda/fałsz/nieznane)
Klauzule – składowe składowe oświadczeń i zapytań
PL/SQL
PL/SQL (Procedural Language/Structured Query Language) to proceduralny język rozszerzeń Oracle Corporation dla SQL i relacyjnej bazy danych Oracle. PL/SQL obsługuje zmienne, warunki, pętle, tablice, wyjątki. PL/SQL zasadniczo kontenery kodu mogą być skompilowane w bazach danych Oracle. Twórcy oprogramowania mogą zatem w prosty sposób wszczepić jednostki funkcjonalności PL/SQL do bazy danych.
Jednostki programu PL/SQL można zdefiniować w następujący sposób:
Bloki anonimowe
Tworzy podstawę najprostszego kodu PL/SQL
Funkcje
Funkcje to zbiór instrukcji SQL i PL/SQL. Funkcje wykonują zadanie i powinny zwrócić wartość do środowiska wywołującego.
Procedury
Procedury są podobne do funkcji. Procedury mogą być również wykonywane w celu wykonania pracy. Procedury nie mogą być używane w instrukcji SQL, mogą zwracać wiele wartości. Ponadto funkcje mogą być wywoływane z SQL, podczas gdy procedury nie.
Pakiety
Korzystanie z pakietów to ponowne użycie kodu. Pakiety to grupy teoretycznie połączonych Funkcji, Procedur, Zmiennych, instrukcji PL/SQL dotyczących tabel i rekordów TYPE, Stałych i Kursorów itp. Pakiety zwykle składają się z dwóch części, specyfikacji i treści
Dwie zalety pakietów to:
Podejście modułowe, enkapsulacja logiki biznesowej
Za pomocą pakietów można deklarować zmienne na poziomach sesji
Typy zmiennych w PL/SQL
Zmienne
Zmienne numeryczne
Zmienne znakowe
Zmienne daty
Typy danych dla określonych kolumn
Różnica między SQL a PL/SQL
SQL jest językiem zorientowanym na dane do wybierania i manipulowania danymi, ale PL SQL jest językiem proceduralnym do tworzenia aplikacji.
SQL wykonuje jednorazowo jedną instrukcję, podczas gdy w PL można wykonać blok kodu SQL.
SQL jest deklaratywny, gdzie PL SQL jest proceduralny.
SQL służy do pisania zapytań, języka manipulacji danymi (DML) i języka definicji danych (DDL), podczas gdy PL SQL służy do pisania bloków programu, wyzwalaczy, funkcji, procedur i pakietów.
Podsumuj:
SQL to ustrukturyzowany język zapytań. W SQL do obsługi bazy danych w sposób uproszczony wykorzystuje się różne zapytania. PL/SQL to język proceduralny zawierający różnego rodzaju zmienne, funkcje i procedury. SQL pozwala programiście na wydawanie pojedynczych zapytań lub wykonywanie pojedynczych operacji wstawiania/aktualizacji/usuwania na raz, podczas gdy PL/SQL pozwala na napisanie kompletnego programu, który wykona kilka operacji wybierania/wstawiania/aktualizacji/usuwania jednocześnie. SQL jest prostym językiem zorientowanym na dane, podczas gdy język programowania PL/SQL.