Diferența dintre PL-SQL și T-SQL

PL-SQL vs T-SQL

T-SQL (Transact SQL) este o extensie a SQL dezvoltată de Microsoft. T-SQL este utilizat în Microsoft SQL Server. PL / SQL (Limba Procedurală / Limbajul Structurat de Interogare) este, de asemenea, o extensie procedurală pentru SQL dezvoltat de Oracle. PL / SQL este un limbaj de programare principal încorporat în baza de date Oracle.

PL / SQL

PL / SQL este o extensie procedurală pentru SQL dezvoltat de Oracle. Programele PL / SQL sunt construite din blocuri, care reprezintă unitatea de bază a PL / SQL. PL / SQL oferă suport pentru variabile, bucle (bucle WHILE, buclă FOR și bucle Cursor FOR), instrucțiuni condiționale, excepții și matrice. Un program PL / SQL conține instrucțiuni SQL. Aceste instrucțiuni SQL includ SELECT, INSERT, UPDATE, DELETE, etc. Exemple SQL cum ar fi CREATE, DROP sau ALTER nu sunt permise în programele PL / SQL. Funcțiile PL / SQL pot conține instrucțiuni PL / SQL și instrucțiuni SQL și returnează o valoare. Procedurile PL / SQL pe de altă parte nu pot conține instrucțiuni SQL și nu returnează o valoare. PL / SQL sprijină, de asemenea, unele concepte de programare orientate pe obiecte, cum ar fi încapsularea, suprasarcina funcțiilor și ascunderea informațiilor. Dar nu susține moștenirea. În PL / SQL, pachetele pot fi utilizate pentru gruparea funcțiilor, procedurilor, variabilelor etc. Pachetele permit reutilizarea codului. Utilizarea codului PL / SQL pe serverul Oracle ar conduce la o performanță îmbunătățită, deoarece serverul Oracle precompilează codul PL / SQL înainte de executarea efectivă a acestuia.

T-SQL

T-SQL este o extensie a SQL dezvoltată de Microsoft. T-SQL extinde SQL prin adăugarea mai multor funcții, cum ar fi programarea procedurală, variabilele locale și funcțiile de suport pentru procesarea șirului / datelor. Aceste caracteristici fac T-SQL Turing completă. Orice aplicație, care trebuie să comunice cu serverul Microsoft SQL, trebuie să trimită o instrucțiune T-SQL la Microsoft SQL Server. T-SQL oferă capabilități de control al fluxului utilizând următoarele cuvinte cheie: BEGIN și END, BREAK, CONTINUE, GOTO, IF și ELSE, RETURN, WAITFOR și WHILE. În plus, T-SQL permite adăugarea unei clauze FROM la instrucțiunile DELETE și UPDATE. Această clauză FROM ar permite inserarea legăturilor în instrucțiunile DELETE și UPDATE. T-SQL permite, de asemenea, introducerea mai multor rânduri într-o tabelă folosind instrucțiunea BULK INSERT. Acest lucru ar introduce mai multe rânduri într-un tabel prin citirea unui fișier extern care conține date. Utilizarea BULK INSERT îmbunătățește performanțele decât folosirea instrucțiunilor separate INSERT pentru fiecare rând care trebuie introdus.

Care este diferența dintre PL / SQL și T-SQL?

PL / SQL este o extensie procedurală a SQL oferită de Oracle și este utilizată împreună cu serverul de baze de date Oracle, în timp ce T-SQL este o extensie a SQL dezvoltată de Microsoft și este folosită în principal cu Microsoft SQL Server. Există unele diferențe între tipurile de date din PL / SQL și T-SQL. De exemplu, T-SQL are două tipuri de date numite DATETIME și SMALL-DATETIME, în timp ce PL / SQL are un singur tip de date numit DATE. Mai mult, pentru a obține funcționalitatea funcției DECODE în PL / SQL, instrucțiunea CASE trebuie folosită în T-SQL. De asemenea, în loc de instrucțiunea SELECT INTO în T-SQL, instrucțiunea INSERT INTO trebuie folosită în PL / SQL. În PL / SQL, există un operator MINUS, care poate fi utilizat cu instrucțiuni SELECT. În T-SQL aceleași rezultate pot fi obținute utilizând clauza NOT EXISTS cu instrucțiunile SELECT.