Structured Query Language) – Бу сўров тили кўп операторлардан ташкил топган бўлиб, бу операторлар орқали фойдаланувчилар ва дастурлар Oracle(МББТ) даги маълумотлар базасига мурожаатни амалга оширишимумкин. Oracle утилилари ёки ҳар хил дастурлар SQL операторларисиз базага мурожаатни амалга оширишимумкин, лекин сўровларни амалга оширишда бу сўров тилидан фойдаланмасликнинг иложи йўқ.
1970 йил июн ойида Э. Ф. КОДД ўзининг E.F. Codd, “A Relational Model of Data for Large Shared Data Banks” мақоласини оммагатақдим этди. Бу мақола “Communications of the ACM” журналида чоп этилди. Ҳозирги кунда Кодднинг бу модели “реляцион маълумотлар базасини бошқариш тизими(РМББТ)” нинг якуний модели деб қабул қилинди. Кодд нинг моделни йўлга қўйиш мақсадида IBM фирмаси SEQUEL(Structured English Query Language) тилини ишлаб чиқди. Кейинчалик бу тил SQL тилигаўзгартирилди, лекин ҳалигача“сиквэл” деб ҳам юритилмоқда. 1979 йил Relational Software(ҳозирги вақтдаги Oracle) корпорацияси SQL нинг биринчи тижорий ишланмасини оммага тақдим этди. Ҳозирги кунда SQL тили РМББТнинг стандарт тили ҳисобланади.
SQL тили сўров-натижа кўринишида ишлайди. Сўровлар ҳар бир элемент учун эмас, бутун бир гуруҳ учун берилади ва натижа олинади. SQL учун маълумотлар базасидаги маълумотлар қай шаклда, қайтартибда жойлашганини умуман аҳамияти йўқ, фойдаланувчилар ҳам бу маълумотларни билиши шарт эмас. Фақатгина операторларни тўғри ёзиш орқали исталган маълумотларни чиқариш мумкин бўлади.
SQL тили барча маълумотлар базасини бошқариш тизимлари учун умумий стандарт тил ҳисобланади. Бундан келиб чиқадики, агар сиз бу тилни бир маротаба ўрганиб олсангиз, исталган МББТ лари билан ишлай оласиз. Битта МББТ да яратилган бирор sql операторлар йиғиндиси(кичик сўров дастури)ни, исталган МББТ га кўчириш мумкин бўлади.
SQL операторлари орқали қуйидаги вазифаларни бажариш мумкин: Маълумотларни сўров орқали олиш. Жадвалнинг қаторларига маълумот қўшиш, қаторларини ўчириш ва янгилаш. Объектларни яратиш, ўзгартириш ва ўчириш. Маълумотлар базаси ва объектларга рухсатларни ўрнатиш. Маълумотлар базаси фойдаланувчиларини ҳосил қилиш ва база хафсизлигини таъминлаш.
2 ҳил турдаги SQL мавжуд: интерактив ва ўрнатилган(встроенный). SQL нинг бу 2 тури ишлаши бир ҳил, лекин ҳар хил жойда ишлатилади.
Интерактив SQL деганда — маълумотлар базасига сўров орқали мурожаат қилиб, шу заҳоти натижани олиш тушунилади. Яъни бунда кетма-кетлик асосида жараёнсодир бўлади. Сўров-натижа режимда ишлайди.
Ўрнатилган SQL деганда – сўровлар йиғиндиси бирор дастурлаш тилида ишлатилиши тушунилади. Pascal, Delphi, Java тилларида базага мурожаат қилиб, натижани бирор ўзгарувчига юклаб қўйамиз ва керакли жойда бу натижани ишлатамиз. Яъни бунда сўров бериб, дарҳол натижани ололмаймиз. Натижа фақат дастурнинг давом этиши учун олинади ваталаб этилган жойда ишлатилади.
SQl операторлари бирнеча гуруҳларга бўлинган. Бу бўлиниш операторларнинг бажарилиш вазифаси асосида бўлинган. Улар қуйидагилар:
DDL(Data Definition Language) , ANSI бу гуруҳ SDL(Schema Definition Language) деб аталади. Бу гуруҳга маълумотлар базасида объектлар(жадваллар, индекслар)ни ҳосил қилувчи операторлар киради.
DML(Data Manipulation Language) – маълумотларни манипуляцияқилувчи операторлар йиғиндиси гуруҳи. Исталган вақтда жадвал ичида қандай маълумотлар сақланаётганини аниқловчи операторлар.
DCL(Data Control Language) – маълумотларни бошқарувчи операторлар.
ANSI нинг рухсати билан, DCL DDL нинг бир қисми сифатида қаралади. Бу гуруҳларни аралаштирмасликзарур. Булар алоҳида тиллар эмас, балки SQL операторларининг гуруҳларидир.
Manba: Nuriston.lark.ru
|