Z pewnością jest to interesujące pytanie. Większość osób, które są zaznajomione z programowaniem Oracle, nie zastanawiałaby się nad tym, ale kiedy do tego dojdzie, definiowanie rozgraniczenia między SQL a PL / SQL może być mylące.
Patrząc na definicję akronimów, zaczynasz rozumieć, jakie obszary funkcjonalności obejmują:
SQL - Structured Query Language
PL / SQL - język proceduralny / język zapytań strukturalnych
Spostrzegawczy czytelnik może zauważyć, jak SQL wyświetla się dwa razy 8) To dlatego, że SQL jest często osadzony w PL / SQL - PL / SQL to język, który został stworzony, aby zapewnić zastrzeżony język 4. generacji (4GL), który bardzo dobrze gra z obiektami bazy danych w Wyrocznia.
Wikipedia ma całkiem niezły materiał na temat SQL i PL / SQL
Zagmatwane jest to, że PL / SQL i SQL nieco się pokrywają. Zadania SQL obejmują wstawianie danych, wysyłanie zapytań, aktualizację i usuwanie, tak zwane operacje języka DML lub operacje na języku manipulacji danymi, ale obejmują także tworzenie, zmianę, zmianę nazwy, upuszczanie, które są operacjami języka DDL lub języka definicji danych. To tutaj niektórzy mogą się pomylić. Operacja tworzenia procedury składowanej, coś napisanego przy użyciu PL / SQL, jest w rzeczywistości SQL - używasz SQL do utworzenia obiektu bazy danych, który reprezentuje blok PL / SQL.
Podobnie możesz osadzić kod SQL w swoim PL / SQL. Pętla FOR w PL / SQL może być oparta na przykład na zapytaniu SQL. Nieco zdmuchuje twój umysł, co? Procedurę tworzy się za pomocą SQL, który faktycznie wewnętrznie używa SQL do wykonania pewnych działań na rekordach z bazy danych.
Fajne rzeczy, jeśli mnie zapytasz.