Різниця між PL-SQL і T-SQL

PL-SQL проти T-SQL

T-SQL (Transact SQL) - це розширення SQL, розроблене Microsoft. T-SQL використовується в Microsoft SQL Server. PL / SQL (Процедурна мова / Структурована мова запитів) також є процедурним розширенням для SQL, розробленим Oracle. PL / SQL - це основна мова програмування, вбудована в базу даних Oracle.

PL / SQL

PL / SQL - це процедурне розширення для SQL, розроблене Oracle. Програми PL / SQL складаються з блоків, що є базовою одиницею PL / SQL. PL / SQL забезпечує підтримку змінних, циклів (циклів WHILE, циклів FOR і циклів курсора FOR), умовних операторів, винятку та масивів. Програма PL / SQL містить оператори SQL. Ці оператори SQL включають SELECT, INSERT, UPDATE, DELETE тощо. Ствердження SQL, такі як CREATE, DROP або ALTER, не допускаються в програмах PL / SQL. Функції PL / SQL можуть містити оператори PL / SQL та оператори SQL, і це повертає значення. Процедури PL / SQL, з іншого боку, не можуть містити оператори SQL і вони не повертають значення. PL / SQL також підтримує деякі об'єктно-орієнтовані концепції програмування, такі як інкапсуляція, перевантаження функцій та приховування інформації. Але це не підтримує спадщину. У PL / SQL пакети можна використовувати для групування функцій, процедур, змінних тощо. Пакети дозволяють повторно використовувати код. Використання PL / SQL-коду на сервері Oracle призведе до підвищення продуктивності, оскільки сервер Oracle попередньо компілює код PL / SQL, перш ніж його фактично виконати.

T-SQL

T-SQL - це розширення SQL, розроблене Microsoft. T-SQL розширює SQL шляхом додавання декількох функцій, таких як процедурне програмування, локальні змінні та підтримуючі функції для обробки рядків / даних. Ці функції роблять T-SQL Turing завершеним. Будь-яка програма, яка потребує зв'язку з сервером Microsoft SQL, повинна надіслати заяву T-SQL на сервер Microsoft SQL Server. T-SQL надає можливості управління потоком, використовуючи такі ключові слова: BEGIN і END, BREAK, CONTINUE, GOTO, IF і ELSE, RETURN, WAITFOR та WHILE. Крім того, T-SQL дозволяє додавати пункт FROM до операторів DELETE та UPDATE. Цей пункт FROM дозволить вставляти приєднання до операторів DELETE та UPDATE. T-SQL також дозволяє вставляти кілька рядків у таблицю за допомогою оператора BULK INSERT. Це дозволить вставити кілька рядків у таблицю, прочитавши зовнішній файл, що містить дані. Використання BULK INSERT покращує продуктивність, ніж використання окремих операторів INSERT для кожного рядка, який потрібно вставити.

Яка різниця між PL / SQL і T-SQL?

PL / SQL - це процедурне розширення до SQL, що надається Oracle, і воно використовується разом із сервером баз даних Oracle, тоді як T-SQL є розширенням SQL, розробленим Microsoft, і в основному використовується з Microsoft SQL Server. Існують деякі відмінності між типами даних в PL / SQL і T-SQL. Наприклад, T-SQL має два типи даних, які називаються DATETIME і SMALL-DATETIME, тоді як PL / SQL має один тип даних, який називається DATE. Крім того, для отримання функціональності функції DECODE в PL / SQL, оператор CASE повинен використовуватися в T-SQL. Крім того, замість оператора SELECT INTO в T-SQL, в PL / SQL слід використовувати оператор INSERT INTO. У PL / SQL є оператор MINUS, який може використовуватися з операторами SELECT. У T-SQL ті самі результати можна отримати, використовуючи пункт NOT EXISTS з операторами SELECT.