Relyatsion ma’lumotlar bazasi va DBMS nima
Relyatsion ma’lumotlar bazasi va ma’lumotlar bazasini boshqarish tizimi (DBMS) haqida gapirishdan oldin, biz umuman ma’lumotlar bazasi nima ekanligini bilishimiz kerak.
Ma’lumotlar bazasi (DB) tushunchasi mavhumdir. Aniq tushunchalar — bu biror narsaning ma’lumotlar bazasi (ombori). Masalan, kutubxona ma’lumotlar bazasi, sayt ma’lumotlar bazasi yoki xodimlar, mahsulotlar, yetkazib beruvchilar va mijozlar haqidagi ma’lumotlarni saqlaydigan do’kon ma’lumotlar bazasi.
Bunday ma’lumotlarni jadvallarda saqlash eng qulay usul hisoblanadi. Masalan, ma’lumotlar bazasi quyidagi jadvallardan iborat bo’lishi mumkin: «Xodimlar», «Yetkazib beruvchilar», «Mijozlar». Har bir jadvalning o’z ustunlari va satrlari bo’ladi.
Shunday qilib, «Xodimlar» jadvali «Ism», «Lavozim», «Ish haqi» ustunlarini o’z ichiga olishi mumkin. Ushbu jadvalning har bir satrida bir kishi haqida ma’lumot bo’ladi. Ma’lumotlar bazasi jadvallari shunday tuziladi. Har bir satr «yozuv» deb ataladi, qatorning har bir katakchasi «maydon» deb ataladi. Muayyan maydonning mazmuni uning qanday turdagi ma’lumotlarni saqlashi ustuni bilan belgilanadi.
Keyingi savol — jadvallarni qayerda saqlash kerak? Shubhasiz, fayllarda yoki bitta faylda. Misol uchun, biz Excel yoki boshqa elektron jadvalni ochib, ba’zi o’zimizga kerakli jadvallarni to’ldirishimiz mumkin.Bu bizning Ma’lumotlar bazamiz bo’lib xizmat qiladi.
Tasavvur qilaylik, katta ma’lumotlar bazasi, aytaylik, korxona bor. Bu juda katta fayl bo’lishi mumkin, ko’p odamlar uni bir vaqtning o’zida ishlatadilar, ba’zilari ma’lumotlarni o’zgartiradilar, boshqalari ma’lumot qidiradi. Elektron jadval barcha operatsiyalarni kuzatib bora olmaydi va ularni to’g’ri qayta ishlay olmaydi. Bundan tashqari, katta ma’lumotlar bazasini butunlay xotiraga yuklash yaxshi fikr emas.
Bu boshqa imkoniyatlarga ega dasturiy ta’minotni talab qiladi. Ma’lumotlar bazasi dasturiy ta’minoti ma’lumotlar bazasini boshqarish tizimlari, ya’ni DBMS deb ataladi.
Ana endi, bizda ma’lumotlar bazasini o’z ichiga olgan ma’lum bir strukturaning fayli, shuningdek, ushbu fayl bilan ishlashni ta’minlaydigan dasturiy ta’minot bo’lishi kerak.
Ma’lumotlar bazalarini tavsiflash va ularni tahrirlash uchun standart umumiy til SQL hisoblanadi.
SQL umumiy til bo’lsada, juda ko’p sonli turli xil ma’lumotlar bazasini boshqarish dasturiy ta’minotlari mavjud. Masalan: SQLite, MySQL, PostgreSQL va boshqalar. Ularning har biri boshqalardan ba’zi farqlarga ega, buning natijasida ularda ishlatiladigan SQL-ga ozgina o’ziga xoslikni beradi va uning dialektini shakllantiradi.
Ma’lumotlar bazalari bilan ishlashni o’rganayotganda, siz bir tomondan, universal SQLni tilini o’rganasiz, ikkinchi tomondan, siz ma’lum bir DBMS bilan tajriba orttirasiz. Shu bilan birga, keyinchalik bir DBMSdan boshqasiga o’tish nisbatan oson kechadi.
Endi relyatsion ma’lumotlar bazasi (RDB) nima degan savolga tug’iladi. “relyatsion” so‘zi “relation” so‘zidan kelib chiqqan. Bu shuni anglatadiki, RDBlarda jadvallar o’rtasida aloqa o’rnatish usullari mavjud. Bu «Ishchilar» jadvalidagi ayrim obyektlarni «Xodimlar» jadvalidagi ayrim obyektlar bilan o’zaro munosabatini o’rnatishingiz mumkin degani.
Aytaylik, biz veb-sayt uchun ma’lumotlar bazasini ishlab chiqmoqdamiz. Jadvallardan birida sayt sahifalari haqidagi ma’lumotlar bo’ladi. Ikkinchi jadvalda sayt bo’limlari haqida ma’lumotlar mavjud. Birinchi jadvalning har bir satr-yozuvi uning maydonlaridan birida ushbu yozuv bilan tasvirlangan sahifa tegishli bo’lgan bo’lim ko’rsatkichini o’z ichiga olishi kerak.
Shunday qilib, biz turli ob’ektlarni (sahifalar va bo’limlarni) jadvallar bo’yicha ajratamiz, va ular o’rtasida aloqa o’rnatamiz. Keyinchalik, SQL tilidan foydalanib, biz, masalan, ma’lum bir bo’lim va unga tegishli sahifalar haqida ma’lumot oladigan so’rovni yaratishimiz mumkin.
Aynan shu usulda bazadagi obyektlarni bir biriga biriktirish orqali biz omborda yanada aniq va tartibli usulda katta ma’lumotlarni jadval ko’rinishida saqlay olamiz. Ularga murojaat , biror bir obyekti topish uni so’ralgan manzilga taqdim etish tez va samarali amalga oshadi. Jadval ko’rinishida SQL tili orqali ma’lumotlarni saqlash oddiy excel dan ko’ra effektiv bo’ladi.
Har qanday Back-End dasturchi SQL haqida bilishi shart, bu tilni o’rganishi va u orqali DB da ma’lumotlar uchun saralash, olish, o’chirish , hosil qilish kabi amallar uchun so’rovlar yoza olishi kerak. SQL haqida uning so’rovlari haqida biz «Har bir dasturchi bilishi kerak bo’lgan asosiy SQL buyruqlari» nomli maqolamiz orqali bilib oling.
Umumiy Dasturlash
Relyatsion ma’lumotlar bazasi va DBMS nima