2.1 -LABORATORIYA ISHI
Mavzu:
Ma’lumotlarni tanlash va ular ustida amallar.
Ishdan maqsad:
Ma’lumotlarni tanlashni o‘rganish
Масалани қўйилиши:
Avto_bekat ma’lumotlar bazasini tashkil eting va
uning lortej qiymatlarini chaqirib oling.
Uslubiy ko‘rsatmalar: Talaba buning uchun MySQL dagi operatorlarni to‘g‘ri
yozishni o‘rgangan bo‘lishi shart. Mantiqiy fikrlashga ega bo‘lishi kerak.
Yuqorida aytilganidek Avto_bekat ma’lumotlar bazasini shakllantirib olaylik
va quyidagicha deb tasavvur qilaylik:
Demak, ushbu ma’lumotlar bazamizning ichida 1ta jadval berilgan bo‘lib, u
bekat nomi bilan saqlangan. Ushbu jadvalimizda qanaqangi ma’lumotlar borligini
ko‘rib olamiz:
Yuqoridagi jadvalda 3ta satr mavjud bo‘lib, u haqida umumiy fikrga ega
bo‘ldek.
Masalaning qo‘yilishidan foydalanib, bizga kerakli bo‘lgan ma’lumotlarni
oynaga chaqirib olishimiz zarur bo‘ladi. Uning esa hozirda bir qancha yo‘llarini
ko‘rib o‘tamiz:
1)
SELECT * FROM ;
2)
SELECT * FROM WHERE atribut=;
3)
SELECT atribut1, atribut2, …, atributN FROM ;
4)
SELECT atribut1, atribut2, …, atributN FROM WHERE
atribut= ;
Bu yerda N – barcha natural sonlar to‘plami;
Yuqorida berilgan 4ta formula orqali tanlashlarni amalga oshirishimiz
mumkin. Ushbu formulalardan esa o‘zimizning maqsadimizda foydalanib
ko‘ramiz. Uning uchun SQL so‘rovlarini yozish oynasiga o‘tib olamiz. Albatta,
so‘rov yozishdan oldin biz ma’lum bir ma’lumotlar bazasining ichida бўлишимиз
зарур бўлади. Акс ҳолда сўровомиз ишламаслиги мумкин. Мисол сифатида:
Ushbu oynaning qizil rangdagi bandidagi yozuvga e’tibor beramiz. YA’ni
unda ma’lumotlar bazasi tanlanmagani haqida aytib o‘tilgan. Chunki har bir global
bo‘lmagan jadvallarimizda bu kabi so‘rovlar ishlamasligi aniq. Endi esa
ma’lumotlar bazamizni tanlab, yuqoridagi so‘rovni SQL so‘rovlar oynasida
qaytadan kiritib ko‘ramiz:
Ushbu chizmadan ma’lumki biz avto_bekat ma’lumotlar bazasining ichida
turganligimiz aniqdir va shu bilan birga so‘rovlar oynasida so‘rovni ham to‘g‘ri
kiritib oldek. Natijasini bilish uchun esa so‘rovni faollashtiramiz:
Kodimizning sintaksisida hech qanaqangi xatolik bermaganini ko‘rdek.
Jadvaldagi natijasi esa quyidagicha bo‘ladi:
So‘rovdagi “*” belgisining vazifasi shundan iboratki, jadvaldagi barcha
atributlarning qiymatlarini oynaga chiqarishni bildiradi. Demak, 1-formula bilan
bog‘liq yechimni o‘rgandek. 2-formula bilan ishlab ko‘ramiz, ya’ni bu formulada
barcha atributlarning qiymatlarini shart asosidagi tanlash назарда тутилган.
Мисол sifatida Rangi atributining qiymati Oq bo‘lganlarining barcha ma’lumotlari
ekranga chiqarilsin. Buning uchun yana so‘rovlar oynasiga qaytib, quyidagi
kodlarni yozaylik:
So‘rovni faollashtirib ya’ni OK tugmasini bosib quyidagilarni hosil qilamiz:
Kodni yozishda hech qanaqangi sintaksis hatolikga yo‘l qo‘ymaganmiz.
So‘rovimizdagi natijaning relyatsion jadval ko‘rinishidagi yechimi
quyidagicha bo‘ladi:
Demak, bizning jadvalimizda 2ta turdagi rangi oq bo‘lgan mashina bor ekan,
ularning barcha ma’lumotlari esa yuqoridagi rasmda tasvirlangan. 3-formulaga
nisbatan masalamizni yechishni davom ettiramiz. Bu formulada bizga jadvalda
mavjud bo‘lgan ma’lumotlarning faqatgina kerakli atributlardagi qiymatlarini
chiqarish talab etiladi halos. Misol sifatida, jadvalimizdagi barcha ma’lumotlarning
faqatgina Rusumi va Nomeri qiymatlari oynaga chiqarilsin. Buning uchun
so‘rovlar oynasiga o‘tib quyidagi kodlar ketma-ketligini yozib olamiz:
Kodni faollashtirib quyidagi natijalarga ega bo‘lamiz:
Yuqoridagi rasmdan ko‘rinib turibdiki, masalani yechishdagi yozgan kodimiz
sintaksis jihatdan to‘g‘ri ekan. Endi esa uning relyatsion jadval ko‘rinishidagi
yechimini qaraymiz:
Demak, bizning jadvalimizda jami 3ta satr mavjud bo‘lib, unda faqatgina
bizga kerakli bo‘lgan atributlarning qiymatlarigina oynaga chiqarilgan. 4-
formuladan foydalanish vaziyatini qarab o‘taylik. Bu formulani shart asosidagi
bizga zarur bo‘lgan atributlarning qiymatlarini oynaga chiqarish nazarda tutilgan.
Misol tariqasida bekat jadvalidan foydalanib Nomeri=A007ESM bo‘lgan
mashinaning Rusumi va Rangi ekranga chiqarilsin. Buning uchun so‘rovlar
oynasiga o‘tib quyidagicha kodlar ketma-ketligini yozaylik:
Yuqoridagi yozilgan so‘rovni faollashtirib quyidagi natijalarga ega bo‘lamiz:
Masalani yechishdagi yozilgan kodimizning sintaksisi to‘g‘ri ekanligiga
ishonch hosil qildek. Endi esa uning jadval ko‘rinishidagi yechimini ko‘rib o‘tamiz:
Demak, biz so‘rov ostida qidirgan mashinamizning bizga kerakli ma’lumotlari
oynada hosil bo‘ldi.
Shu kabi tanlash usullaridan foydalanib ma’lumotlar bazamizdagi
foydalanuvchilarga zarur bo‘lgan tanlashlar amalga oshiriladi va yetkazib beriladi.
Faqatgina foydalanuvchilar ushbu yetkazishlar ostida qanaqangi kodlar ketma-
ketligi joylashganligini bilishmaydi va ularga uning qiziqi ham yo‘q. Chunki bu
insonlar dasturchi emas, faqatgina iste’molchi holos. Bizga esa bu qiziqarlidir,
chunki biz dasturchimiz. Va dasturlash tillarini o‘zlashtirishimiz zarur.
Do'stlaringiz bilan baham: |