Ma'lumotlar bazasi nima
Har bir ilova — internet-do’kon, ijtimoiy tarmoq, bank ilovasi — juda ko’p ma’lumot bilan ishlaydi: foydalanuvchilar, buyurtmalar, xabarlar. Bu ma’lumot qayerda va qanday saqlanadi? Javob — ma’lumotlar bazasi. SQL’ni o’rganishdan oldin, aynan shu tushunchani oydinlashtiramiz.
Ma’lumotni saqlashning muammosi
Tasavvur qiling, kichik do’koningiz bor va mahsulotlarni shunchaki matnli faylda saqlaysiz:
Olma, 8000, 50 dona
Non, 3000, 120 dona
Sut, 12000, 30 dona
Bu dastlab ishlaydi. Lekin do’kon o’ssa muammolar boshlanadi:
- “Narxi 5000 dan qimmat mahsulotlarni ko’rsat” — buni qanday qilasiz?
- Mahsulot 10 000 taga yetsa, kerakligini qanday tez topasiz?
- Ikki kishi bir vaqtda faylni o’zgartirsa — nima bo’ladi?
Matnli fayl bu savollarga javob bermaydi. Aynan shu yerda ma’lumotlar bazasi kerak bo’ladi.
Ma’lumotlar bazasi nima
Ma’lumotlar bazasi (database) — ma’lumotni tartibli saqlaydigan va tez topib beradigan tizim. Uni yaxshi tashkil qilingan raqamli omborga qiyoslash mumkin: har narsa o’z joyida, kerak bo’lganda bir soniyada topiladi.
Bu darslarda relatsion (jadvalli) ma’lumotlar bazasi bilan ishlaymiz — eng keng tarqalgan turi. Unda ma’lumot jadval ko’rinishida saqlanadi, xuddi Excel jadvaliga o’xshab.
Jadval — ustun va qatorlar
Yuqoridagi do’kon misolini jadval ko’rinishida ko’raylik:
| id | nom | narx | soni |
|---|---|---|---|
| 1 | Olma | 8000 | 50 |
| 2 | Non | 3000 | 120 |
| 3 | Sut | 12000 | 30 |
Bu yerda uch tushuncha bor:
- Jadval (table) — bir turdagi ma’lumotlar to’plami. Bu jadval nomi,
masalan,
mahsulotlar. - Ustun (column) — ma’lumotning bir xususiyati:
nom,narx,soni. Har ustunning aniq turi bor (matn, son). - Qator (row) — bitta yozuv: bitta mahsulotning barcha ma’lumoti.
Nega jadval matnli fayldan ustun
Jadval ko’rinishida saqlangan ma’lumot bilan quyidagilar oson bo’ladi:
- Tez qidiruv. Baza million qatordan kerakligini bir zumda topadi — u ma’lumotni maxsus tartibda (indeks bilan) saqlaydi.
- Aniq so’rov. “Narxi 5000 dan qimmatlarini ko’rsat” — bitta buyruq.
- Bir vaqtda ishlash. Yuzlab foydalanuvchi bir bazaga bexavotir murojaat qiladi, ma’lumot buzilmaydi.
- Bog’lash. Bir nechta jadval o’zaro bog’lanadi — masalan,
buyurtmalarjadvalimahsulotlarjadvaliga ishora qiladi.
Ana shu jadvallar bilan ishlash uchun maxsus til bor — SQL. Uni keyingi darsda ko’ramiz.
Mashhur ma’lumotlar bazalari
Relatsion bazalarning bir nechta turi bor, lekin ularning hammasi SQL tilida ishlaydi:
- SQLite — eng sodda, bitta fayl. O’rganish uchun ideal.
- PostgreSQL — kuchli, professional loyihalarda ko’p ishlatiladi.
- MySQL — web saytlarda keng tarqalgan.
SQL’ni bir marta o’rgansangiz, uchalasida ham ishlaysiz — asosiy buyruqlar bir xil.
Jonli namuna
O’zingiz ishga tushirib ko’ring — so’rovni tahrirlashingiz ham mumkin:
Amaliy mashq
Bu darsda so’rov yozilmaydi — tuzilmani tushuning:
- Yuqoridagi runner’da
SELECT * FROM mahsulotlar;ni ishga tushiring; - natijadagi ustunlar va qatorlarni sanang;
- qaysi ustun har qator uchun noyob ekanini toping;
mijozlarvabuyurtmalarjadvallarini ham ko’ring;- qog’ozda chizing: bu uch jadval bir-biriga qanday bog’langan?
buyurtmalar dagi qaysi ustunlar boshqa jadvalga ishora qilyapti?
Qisqacha xulosa
- Ma’lumotlar bazasi — ma’lumotni tartibli saqlaydigan va tez topib beradigan tizim.
- Relatsion bazada ma’lumot jadval ko’rinishida saqlanadi.
- Jadval: ustunlar (xususiyatlar) va qatorlar (yozuvlar)dan iborat;
odatda
idustuni har qatorni noyob belgilaydi. - Jadval matnli fayldan ustun: tez qidiruv, aniq so’rov, bir vaqtda ishlash, jadvallarni bog’lash.
- Barcha relatsion bazalar (SQLite, PostgreSQL, MySQL) SQL tilida ishlaydi.
Keyingi darsda SQL tili bilan tanishamiz va birinchi so’rovimizni yozamiz.