Różnica między PL-SQL a T-SQL

PL-SQL vs T-SQL

T-SQL (Transact SQL) jest rozszerzeniem SQL opracowanym przez Microsoft. T-SQL jest używany w Microsoft SQL Server. PL / SQL (język proceduralny / język zapytań strukturalnych) to także rozszerzenie proceduralne dla SQL opracowane przez Oracle. PL / SQL jest głównym językiem programowania osadzonym w bazie danych Oracle.

PL / SQL

PL / SQL to rozszerzenie proceduralne dla SQL opracowane przez Oracle. Programy PL / SQL składają się z bloków, które są podstawową jednostką PL / SQL. PL / SQL zapewnia obsługę zmiennych, pętli (pętle WHILE, pętle FOR i pętle Cursor FOR), instrukcji warunkowych, wyjątków i tablic. Program PL / SQL zawiera instrukcje SQL. Te instrukcje SQL obejmują SELECT, INSERT, UPDATE, DELETE itp. Instrukcje SQL, takie jak CREATE, DROP lub ALTER, nie są dozwolone w programach PL / SQL. Funkcje PL / SQL mogą zawierać instrukcje PL / SQL i instrukcje SQL i zwraca wartość. Z drugiej strony procedury PL / SQL nie mogą zawierać instrukcji SQL i nie zwracają wartości. PL / SQL obsługuje także niektóre koncepcje programowania obiektowego, takie jak enkapsulacja, przeciążanie funkcji i ukrywanie informacji. Ale nie obsługuje dziedziczenia. W języku PL / SQL pakiety mogą być używane do grupowania funkcji, procedur, zmiennych itp. Pakiety umożliwiają ponowne użycie kodu. Użycie kodu PL / SQL na serwerze Oracle doprowadziłoby do poprawy wydajności, ponieważ serwer Oracle wstępnie kompiluje kod PL / SQL przed jego wykonaniem.

T-SQL

T-SQL jest rozszerzeniem SQL opracowanym przez Microsoft. T-SQL rozszerza SQL, dodając kilka funkcji, takich jak programowanie procedur, zmienne lokalne i funkcje wspierające przetwarzanie ciągów / danych. Te funkcje sprawiają, że T-SQL Turing jest kompletny. Każda aplikacja, która musi komunikować się z serwerem Microsoft SQL, musi wysłać instrukcję T-SQL do serwera Microsoft SQL Server. T-SQL zapewnia możliwości kontroli przepływu przy użyciu następujących słów kluczowych: BEGIN and END, BREAK, CONTINUE, GOTO, IF and ELSE, RETURN, WAITFOR i WHILE. Ponadto T-SQL pozwala na dodanie klauzuli FROM do instrukcji DELETE i UPDATE. Ta klauzula FROM pozwoliłaby wstawiać sprzężenia do instrukcji DELETE i UPDATE. T-SQL umożliwia także wstawianie wielu wierszy do tabeli za pomocą instrukcji BULK INSERT. Spowodowałoby to wstawienie wielu wierszy do tabeli poprzez odczytanie zewnętrznego pliku zawierającego dane. Użycie BULK INSERT poprawia wydajność niż użycie osobnych instrukcji INSERT dla każdego wiersza, który należy wstawić.

Jaka jest różnica między PL / SQL a T-SQL?

PL / SQL jest proceduralnym rozszerzeniem SQL dostarczanym przez Oracle i jest ono używane z serwerem bazy danych Oracle, natomiast T-SQL jest rozszerzeniem SQL opracowanym przez Microsoft i jest głównie używane z Microsoft SQL Server. Istnieją pewne różnice między typami danych w PL / SQL i T-SQL. Na przykład T-SQL ma dwa typy danych o nazwie DATETIME i SMALL-DATETIME, podczas gdy PL / SQL ma jeden typ danych o nazwie DATE. Ponadto, aby uzyskać funkcjonalność funkcji DEKODUJ w języku PL / SQL, w języku T-SQL należy użyć instrukcji CASE. Ponadto zamiast instrukcji SELECT INTO w języku T-SQL należy używać instrukcji INSERT INTO w języku PL / SQL. W PL / SQL istnieje operator MINUS, którego można używać z instrukcjami SELECT. W języku T-SQL te same wyniki można uzyskać za pomocą klauzuli NOT EXISTS w instrukcjach SELECT.