Sql(Structured Query Language) haqida



Download 44,5 Kb.
Sana30.11.2022
Hajmi44,5 Kb.
#875461
Bog'liq
SQL haqida


SQL(Structured Query Language) haqida
Assalomu alaykum hammaga!!! Bugun sizlar bilan hammaga mashhur bo'lgan SQL(Structured Query Language) haqida gaplashamiz. Qani unda boshladik....

SQL(Structured Query Language) haqida
SQL(Structured Query Language) – Bu so'rov tili ko'p operatorlardan tashkil topgan.Bu operatorlar orqali foydalanuvchilar, hamda dasturlar Oracle(MBBT) dagi ma'lumotlar bazasiga murojaatni amalga oshirishi mumkin. Oracle utililari yoki har xil dasturlar SQL operatorlarisiz bazaga murojaatni amalga oshirishi mumkin, ammo so'rovlarni amalga oshirishda bu so'rov tilidan foydalanmaslikning iloji yo'q.
1970-yil iyun oyida E. F. KODD o'zining E.F. Codd, "A Relational Model of Data for Large Shared Data Banks" maqolasini ommaga taqdim etdi va bu maqola "Communications of the ACM" jurnalida chop etildi. Hozirgi kunda kodning bu modeli "relyastion ma'lumotlar bazasini boshqarish tizimi(RMBBT)" ning yakuniy modeli deb qabul qilindi. Kod ning modelni yo'lga qo'yish maqsadida IBM firmasi SEQUEL(Structured English Query Language) tilini ishlab chiqdi. Keyinchalik bu til SQL tiliga o'zgartirildi va lekin haligacha "sikvel" deb ham yuritilmoqda. 1979-yil Relational Software(hozirgi vaqtdagi Oracle) korporatsiyasi SQL-ning birinchi tijoriy ishlanmasini ommaga taqdim etdi. Hozirgi kunda SQL-tili RMBBTning standart tili hisoblanadi.

SQL-tili so'rov-natija ko'rinishida ishlaydi. So'rovlar har bir element uchun emas, butun bir guruh uchun beriladi hamda, natija olinadi. SQL uchun ma'lumotlar bazasidagi ma'lumotlar qanday shaklda, qanday tartibda joylashganini umuman ahamiyati yo'q, foydalanuvchilar ham bu ma'lumotlarni bilishi shart emas. Faqatgina operatorlarni to'g'ri yozish orqali istalgan ma'lumotlarni chiqarish mumkin.
SQL tili barcha ma'lumotlar bazasini boshqarish tizimlari uchun umumiy,standart til hisoblanadi. Bundan kelib chiqadiki, agar biz bu tilni bir marotaba o'rganib olsak, istalgan MBBT lari bilan ishlay olamiz. Bitta MBBT da yaratilgan biror sql operatorlar yig'indisi(kichik so'rov dasturi)ni, istalgan MBBT-ga ko'chirish mumkin bo'ladi.
Nega SQL?
SQL keng tarqalgan, chunki u quyidagi afzalliklarga ega:
Foydalanuvchilarga ma’lumotlar bazasini boshqarish tizimlaridagi ma’lumotlarga kirishga ruxsat beradi.
Foydalanuvchilarga ma’lumotlarni tasvirlashga imkon beradi
Foydalanuvchilarga ma’lumotlar bazasidagi ma’lumotlarni aniqlash va ularni boshqarishga imkon bera oladi.
SQL modullari, kutubxonalari va pre-kompilyatorlaridan foydalanib, boshqa tillarda ichki joylashuvga ruxsat beradi
Foydalanuvchilarga ma’lumotlar bazalari va jadvallarni yaratish va tushirishga ruxsat beradi
Foydalanuvchilarga ma’lumotlar bazasida ko’rish, saqlanadigan protsedura, funksiyalarni yaratishga imkon beradi
Foydalanuvchilarga jadvallar, protseduralar va ko’rinishlar bo’yicha ruxsatlarni o’rnatish uchun ruxsat beradi.
Oracle-da SQL buyruqlaridan foydalanish

Oracle, ehtimol Microsoft SQL Serverning yagona jiddiy raqibidir. Aynan mana shu rivojlanish va boshqarish muhiti Microsoft dasturiy mahsulotining funktsiyalarini doimiy ravishda yaxshilaydi, chunki raqobat taraqqiyotning dvigateli hisoblanadi. Doimiy raqobatga qaramay, Oracle-ning SQL buyruqlari SQL-ga o'xshaydi. Shunisi e'tiborga loyiqki, Oracle SQLning deyarli to'liq nusxasi deb hisoblansa-da, ushbu tizim va umuman tilning mantiqi sodda deb hisoblanadi. 

Muayyan buyruqlar to'plamidan foydalanganda Oracle bunday murakkab tuzilishga ega emas hisoblanadi. Ushbu ma'lumotlar bazasini ishlab chiqish muhitlarining imkoniyatlarini hisobga olgan holda, Oracle murakkab ichki so'rovlar tuzilishiga ega emas.
Ushbu farq ma'lumotlar bilan ishlashni ko'p marta tezlashtirishga imkon bera oladi, aksincha, ba'zi bir alohida holatlarda xotiradan behuda foydalanishga olib keladi. Oracle tuzilishi asosan vaqtinchalik jadvallar va ulardan foydalanish asosida qurilgan. Misol tariqasida: Ushbu tizimdagi SQL buyruqlari,SQL tilining o'zi standartlari bilan o'xshashlik asosida tuzilgan, garchi ular undan biroz farq qilsalar ham.
SELECTCONCAT (CONCAT (CONCAT ('o’qituvchi ', ism), CONCAT (SUBSTR (fname, 0, 1), SUBSTR (otch, 0, 1))), CONCAT ('qaysi fan mutahasisi', ishga qabul qilingan sana)) Qayerda qabul qilingan kun\u003e to_date ('01 .01.80 ',' dd.mm.yyyy ');
Ushbu so'rov ma'lum vaqt ichida ishga qabul qilingan o’qituvchilar to'g'risidagi ma'lumotlarni qaytaradi. So'rovning tuzilishi boshqacha bo'lishiga qaramay, ushbu tizimlarda SQL buyruqlarining bajarilishi o'xshash, faqat kichik detallar bundan mustasno holda.

SQL operatorlari orqali quyidagi vazifalarni bajarish mumkin:
Ma'lumotlarni so'rov orqali olish.
Jadvalning qatorlariga ma'lumot qo'shish, qatorlarini o'chirish va yangilash.
Ob'ektlarni yaratish, o'zgartirish va o'chirish.
Ma'lumotlar bazasi va ob'ektlarga ruxsatlarni o'rnatish.
Ma'lumotlar bazasi foydalanuvchilarini hosil qilish va baza xafsizligini ta'minlash.
2 xil turdagi SQL mavjud: interaktiv va o'rnatilgan(встроенный). SQL-ning bu 2-turi ishlashi bir xil, lekin har xil joyda ishlatiladi.
Interaktiv SQL deganda — ma'lumotlar bazasiga so'rov orqali murojaat qilib, shu zahoti natijani olishimiz tushuniladi,ya'ni bunda ketma-ketlik asosida jarayon sodir bo'ladi. So'rov-natija rejimda ishlaydi.
O'rnatilgan SQL deganda – so'rovlar yig'indisi biror dasturlash tilida ishlatilishini tushunishimiz mumkin. Pascal, Delphi, Java tillarida bazaga murojaat qilib, natijani biror o'zgaruvchiga yuklab qo'yamiz, hamda kerakli joyda bu natijani ishlatamiz. Ya'ni bunda so'rov berib, darhol natijani ololmaymiz. Natija faqat dasturning davom etishi uchun olinadi hamda talab etilgan joyda ishlatiladi.
SQl-operatorlari bir necha guruhlarga bo'lingan. Bu bo'linish operatorlarning bajarilish vazifasi asosida bo'lingan. Ular quyidagilar:
DDL(Data Definition Language) , ANSI-bu guruh SDL(Schema Definition Language) deb ataladi. Bu guruhga ma'lumotlar bazasida ob'ektlar(jadvallar, indekslar)ni hosil qiluvchi operatorlar kiradi.
DML(Data Manipulation Language) – ma'lumotlarni manipulyatsiya qiluvchi operatorlar yig'indisi guruhi hisboblanadi. Istalgan vaqtda jadval ichida qanday ma'lumotlar saqlanayotganini aniqlovchi operatorlar.
DCL(Data Control Language) – ma'lumotlarni boshqaruvchi operatorlar.
ANSI-ning ruxsati bilan, DCL DDL ning bir qismi sifatida qaraladi. Bu guruhlarni aralashtirmaslik kerak. Quyidagilar alohida tillar emas, balki SQL operatorlarining guruhlaridir.
SQL jarayoni

Har qanday RDBMS uchun SQL buyrug’ini bajarayotganimizda, tizim bizning so’ro’vimizni bajarishning eng yaxshi usulini hamda, SQL dvigatelini vazifani qanday izohlashni aniqlaydi.
Ushbu jarayonga kiritilgan turli xil tarkibiy qismlar mavjud:
So’rov dispetcheri.
Optimallashtirish dvigatellari.
Klassik so’rovlar mexanizmi.
SQL so’rov mexanizmi va boshqalar.
Klassik so’rovlar tizimi - SQL bo’lmagan barcha so’rovlarni bajaradi, lekin SQL so’rov mexanizmi mantiqiy fayllarni ishlay olmaydi.
SQL arxitekturasini ko’rsatadigan diagramma:

SQL buyruqlari 
Relatsyon ma’lumotlar bazasi bilan o’zaro aloqada bo’lish uchun standart SQL buyruqlari CREATE-yaratish, SELECT-tanlash, INSERT-kiritish,UPDATE-yangilash, Delete-o’chirish va DROP- butunlay o’chirib tashlash . Ushbu buyruqlarni tabiatiga qrab quyidagi guruhlarga bo’lish mumkin:
DDL-ma’lumotlarni aniqlash tili
CREATE –YARATMOQ Ma’lumotlar bazasida yangi jadval,jadval ko’rinishi yoki boshqa obyekt yaratadi.
ALTER- O’zgartirish kiritish. Jadvl kabi mavjud ma’lumotlar bazasi obyektini o’zgartiradi.
DROP- butun jadvalni, jadval ko’rinishini yoki ma’lumotlar bazasidagi boshqa obyektlarni yo’q qiladi.
DCL- Ma’lumotlarni boshqarish tili
GRANT- Foydalanuvchi uchun imtiyoz beradi.
REVOKE- Qayta ko’rib chiqing. Foydalanuvchiga berilgan imtiyozlarni qaytarib olad
DML –ma’lumotlar manipulyatsiyasi tili
SELECT-TANLASH. Bir yoki bir nechta jadvaldan ma’lum yozuvlarni olish.
INSERT- KIRITMOQ. Yozuvni yaratadi
UPDATE- YANGILASH.Yozuvlarni o’zgartiradi.
DELETE- O’chirish. Yozuvlarni yo’q qiladi.
SQL-dan foydalanish

Jahon tarmog'i, ya'ni Internet paydo bo'lishi bilan SQL tilining ko'lami yanada kengaymoqda. Ma'lumki, tarmoq ko'plab ma'lumotlarni saqlaydi, lekin ular tartibsiz joylashmagan, balki ma'lum mezonlarga muvofiq saytlar va serverlarga joylashtirilgan hisoblanadi.
Ma'lumot bazalari- boshqa joylarda bo'lgani kabi, Internetda ma'lumotlarni saqlash uchun bevosita javobgardir hamda, saytlar - boshqaruv tizimidir. Qoida tariqasida saytlar va ularning dastur kodlari turli dasturlash tillarida tashkil etilgan, ammo ma'lumotlar bazalari SQL navlaridan biriga, ya'ni MySQL veb-interfeyslariga yo'naltirilgan ma'lumotlar bazasini yaratish tiliga asoslangan.
Ushbu tilning sintaksis va asosiy buyruqlar to'plami odatdagi SQL-ni to'liq nusxa ko'chiradi, ammo ba'zi qo'shimchalar bilan uni Microsoft SQL Serverdan farq qiladi.
SQL buyruqlari nafaqat sintaksisda, balki xizmat ko'rsatuvchi so'zlarning standart to'plamida ham to'liq o'xshashdir. Faqatgina, farq shundaki so'rovni chaqirish va tuzishda. Masalan, biz yangi jadval yaratish haqidagi so'rovni ko'rib chiqishimiz mumkin, aynan shu jadval hisobni udacity bilan bog’lash kabi:
$ link \u003d mysqli_connect ("localhost", "root", "", "tester");
if (! $ link) die ("Xato");
$ query \u003d "jadval foydalanuvchilari yaratish (
login VARCHAR (20),
parol VARCHAR (20)
if (mysqli_query ($ link, $ query)) echo "Jadval yaratildi.";
elseecho "Jadval yaratilmagan:" .mysqli_error ();
mysqli_close ($ link);
Bunday so'rov natijasida biz "Users" yangi jadvalini olishimiz mumkin, unda ikkita maydon bo'ladi: login va parol.
Sintaksis web uchun o'zgartirildi, lekin MicrosoftSQLServer buyruqlari asosida.
Microsoft SQL Server so'rovlarini yaratish

Ma'lumotlar to'plamining jadvallaridan olish SQL-ning asosiy vazifalaridan biridir. Bunday operatsiyalar uchun SQL-da tanlov buyrug'i mavjud. Bu haqida quyida muhokama qilinadi.
Buyruqni tuzish qoidalari, juda sodda va SQL select buyrug'ining o'zi quyidagicha tuzilgan. Masalan, o’quvchi haqida ma'lumotlarni o'z ichiga olgan jadval mavjud, masalan, Sherzod ismiga ega. Vazifani qo'yaylikki, jadvaldan tug'ilgan yili shu yilning 15 noyabrdan 1 martgacha bo'lgan vaqt oralig'ida online ta’lim olgan o’quvchilar to'g'risidagi ma'lumotlarni tanlash kerak. Bunday tanlov uchun nafaqat standart qurilish, balki tanlov shartini ham o'z ichiga oladigan SQL buyrug'ini bajarish kerak bo’ladi:
Shaxsdan * -ni tanlang
P_BerthDay\u003e \u003d ‘15 / 11/2020 'va P_BerthDay qayerda<= ‘01/03/2020’
Bunday buyruqni bajarish online ta'lim olishni boshlagan kuni biz ko'rsatgan davrda bo'lgan o'quvchilar haqidagi barcha ma'lumotlarni qaytaradi. Ba'zan vazifa faqat o'quvchining familiyasini, ismini va otasining ismini ko'rsatish bo'lishi mumkin. Buning uchun so'rov biroz boshqacha tarzda tuzilishi kerak, masalan, shu tarzda:
P_Name-ni tanlang
P_SurName - familiya
P_Patronimic - otasining ismi
P_BerthDay\u003e \u003d ‘15 / 11/2020 'va P_BerthDay qaerda<= ‘01/03/2020’
Ammo, bu faqat bir narsani tanlashdir. U mohiyatan, hech narsaga ta'sir qilmaydi, balki faqat ma'lumot beradi. Lekin, agar biz SQL tiliga jiddiy munosabatda bo'lishga qaror qilsak, ma'lumotlar bazalariga qanday o'zgartirish kiritishni o'rganishimiz kerak bo'ladi, chunki ularning tuzilishi shunchaki imkonsiz. Bu qanday amalga oshiriladi, quyida gaplashib o’tamiz.
Ma'lumotlarni o'zgartirish uchun asosiy SQL buyruqlari
Tilning sintaksisi nafaqat so'rovlarni bajarish uchun, balki ma'lumotlarni manipulyatsiya qilish uchun ham tuzilgan. Ma'lumotlar bazasi dasturchisining asosiy vazifasi tanlovlar va hisobotlar uchun skriptlarni yozishdir, ammo, ba'zida jadvallarga tahrir qilish kerak bo'lib qoladi. Bunday harakatlar uchun SQL buyruqlari ro'yxati kichik va uchta asosiy buyruqdan iborat bo’ladi:
Insert (per. Insert).
Yangilash (har bir- yangilash uchun ).
O'chirish (per. Delete).
Ushbu buyruqlarning maqsadini aniqlash oson, faqat ularning ismlarini tarjima qilish kifoya bo’ladi. Ushbu buyruqlardan foydalanish oson va oddiy qurilish sxemasiga ega, lekin shuni aytib o'tish kerakki, ularning ba'zilari noto'g'ri ishlatilsa, ma'lumotlar bazasiga tuzatib bo'lmaydigan zarar yetkazishi mumkin.
Odatda, bunday MSSQL buyruqlarini ishlatishdan oldin, ularni bajarishning barcha mumkin bo'lgan oqibatlarini o'ylab, hisobga olishimiz kerak bo’ladi.
Ushbu buyruqlarni o'rganib chiqib, ma'lumotlar bazasi jadvallari bilan ishlashni to'liq boshlashimiz, shu bilan uni o'zgartirishimiz va ba'zi yangi o'zgaruvchilar qo'shishimiz yoki eskirganlarini o'chirishimiz mumkin.

Menda hozircha shular, navbatdagi maqolamda SQL haqida yanada ko'proq ma'lumotlar berib o'tishga harakat qilaman.
Download 44,5 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish