Разлика между PL-SQL и T-SQL

Разлика между PL-SQL и T-SQL
Разлика между PL-SQL и T-SQL

Видео: Разлика между PL-SQL и T-SQL

Видео: Разлика между PL-SQL и T-SQL
Видео: Сравнение MS SQL Server и MySQL 2024, Ноември
Anonim

PL-SQL срещу T-SQL

T-SQL (Transact SQL) е разширение на SQL, разработено от Microsoft. T-SQL се използва в Microsoft SQL Server. PL/SQL (Procedural Language/Structured Query Language) също е процедурно разширение за 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, операторът INSERT INTO трябва да се използва в PL/SQL. В PL/SQL има оператор MINUS, който може да се използва с изрази SELECT. В T-SQL същите резултати могат да бъдат получени чрез използване на клаузата NOT EXISTS с инструкциите SELECT.

Препоръчано: