PL-SQL dhidi ya T-SQL
T-SQL (Transact SQL) ni kiendelezi cha SQL kilichoundwa na Microsoft. T-SQL inatumika katika Seva ya Microsoft SQL. PL/SQL (Lugha ya Kiutaratibu/Lugha ya Maswali Iliyoundwa) pia ni kiendelezi cha kiutaratibu cha SQL kilichotengenezwa na Oracle. PL/SQL ni lugha kuu ya programu iliyopachikwa katika hifadhidata ya Oracle.
PL/SQL
PL/SQL ni kiendelezi cha kiutaratibu cha SQL kilichoundwa na Oracle. Programu za PL/SQL zimeundwa kwa vitalu, ambayo ni kitengo cha msingi cha PL/SQL. PL/SQL hutoa usaidizi kwa vigeu, vitanzi (WHILE loops, FOR loops, na Cursor FOR loops), taarifa za masharti, vighairi na safu. Mpango wa PL/SQL una taarifa za SQL. Taarifa hizi za SQL ni pamoja na SELECT, INSERT, UPDATE, DELETE, n.k. Taarifa za SQL kama vile CREATE, DROP, au ALTER haziruhusiwi katika programu za PL/SQL. Vitendaji vya PL/SQL vinaweza kuwa na taarifa za PL/SQL na taarifa za SQL na huleta thamani. Taratibu za PL/SQL kwa upande mwingine haziwezi kuwa na taarifa za SQL na hazirudishi thamani. PL/SQL pia inasaidia baadhi ya dhana za upangaji zenye mwelekeo wa kitu kama vile usimbaji, upakiaji wa kazi kupita kiasi na kuficha habari. Lakini haiungi mkono urithi. Katika PL/SQL, vifurushi vinaweza kutumika kupanga vipengele vya kikundi, taratibu, vigeu, n.k. Vifurushi huruhusu kutumia tena msimbo. Kutumia msimbo wa PL/SQL kwenye seva ya Oracle kungesababisha utendakazi kuboreshwa, kwa kuwa seva ya Oracle hukusanya awali msimbo wa PL/SQL kabla ya kuutekeleza.
T-SQL
T-SQL ni kiendelezi cha SQL kilichoundwa na Microsoft. T-SQL hupanua SQL kwa kuongeza vipengele kadhaa kama vile upangaji wa utaratibu, vigeu vya ndani na vitendakazi vinavyosaidia kwa usindikaji wa kamba/data. Vipengele hivi hufanya T-SQL Turing kukamilika. Programu yoyote, ambayo inahitaji kuwasiliana na seva ya Microsoft SQL, inahitaji kutuma taarifa ya T-SQL kwa Seva ya Microsoft SQL. T-SQL hutoa uwezo wa kudhibiti mtiririko kwa kutumia maneno muhimu yafuatayo: ANZA na MWISHO, BREAK, ENDELEA, GOTO, IF na ELSE, RETURN, WAITFOR, na WHILE. Zaidi ya hayo, T-SQL inaruhusu kifungu cha KUTOKA kuongezwa kwa TAARIFA ZA KUFUTA na KUSASISHA. Kifungu hiki cha KUTOKA kitaruhusu kuingiza viungo kwenye KUFUTA na KUSASISHA taarifa. T-SQL pia inaruhusu kuingiza safu mlalo katika jedwali kwa kutumia taarifa ya BULK INSERT. Hii ingeingiza safu mlalo nyingi kwenye jedwali kwa kusoma faili ya nje iliyo na data. Kutumia BULK INSERT huboresha utendaji kuliko kutumia taarifa tofauti za INSERT kwa kila safu mlalo inayohitaji kuchongwa.
Kuna tofauti gani kati ya PL/SQL na T-SQL?
PL/SQL ni kiendelezi cha kiutaratibu kwa SQL iliyotolewa na Oracle na inatumiwa na seva ya hifadhidata ya Oracle, huku T-SQL ni kiendelezi cha SQL kilichoundwa na Microsoft na hutumiwa zaidi na Seva ya Microsoft SQL. Kuna baadhi ya tofauti kati ya aina za data katika PL/SQL na T-SQL. Kwa mfano T-SQL ina aina mbili za data zinazoitwa DATETIME na SMALL-DATETIME, wakati PL/SQL ina aina moja ya data inayoitwa DATE. Zaidi ya hayo, ili kupata utendakazi wa kazi ya DECODE katika PL/SQL, taarifa ya CASE lazima itumike katika T-SQL. Pia, badala ya taarifa ya SELECT INTO katika T-SQL, taarifa ya INSERT INTO lazima itumike katika PL/SQL. Katika PL/SQL, kuna opereta MINUS, ambayo inaweza kutumika kwa kauli SELECT. Katika T-SQL matokeo yale yale yanaweza kupatikana kwa kutumia kifungu cha NOT EXISTS na kauli CHAGUA.