You are on page 1of 30

MUHAMMAD AL-XORAZMIY NOMIDAGI

TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR


HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

AMALIY 2-MAVZU Ma’lumotlar bazasini


KO‘NIKMA loyihalash, mohiyat –
aloqa diagrammasini
qurish. Relyatsion
ma’lumotlar bazasini
loyihalash.

Ma’lumotlar bazasini loyihalash, mohiyat – aloqa diagrammasini qurish.


Relyatsion ma’lumotlar bazasini loyihalash

Ishdan maqsad: Ma’lumotlar bazasini relyatsion loyihalashni, “Talaba”


ma’lumotlar bazasi uchun mohiyat-aloqa diagrammasini qurishni o‘rganish.

Masalani qo‘yilishi: Relyatsion ma’lumotlar bazasini loyihalash

Maqsadni amalga oshirishni, berilganlarning konseptual modelini yaratishdan boshlaymiz. Buning


uchun File -> New -> Projects… buyruqlar ketma-ketligini bajaramiz. Loyihamizning turini tanlash uchun
20.1 rasmdagi holatni amalga oshiramiz:

1-rasm

Loyihamizga nom beramiz:

1
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

2-rasm

Endi loyihamizga universal model qo‘shamiz. Buning uchun yaratgan loyihamizdagi Models ni tanlab,
o‘ng tugmani bosamiz va yangi oynadan New model… ni tanlaymiz:

3-rasm

Quyidagi oyna ochiladi. Bu oynadan Universal Data Model bo‘limiga o‘tamiz. Modelga Universal deb
nom beramiz:

2
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

4-rasm

OK tugmasini bosganimizdan so‘ng, Universal Model Explorer oynasi hosil bo‘ladi (20.5 rasm).

5-rasm

Universal modelga Universal nomini berdik, endi bu modelga Magistratura o‘quv loyihasidagi
munosabatlarni birin-ketin hosil qilamiz. Buning uchun Entities papkasining ustiga o‘ng tugmani bosib, Add
Entity buyrug‘ini tanlaymiz:

3
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

6-rasm

All Items oynasida avtomatik tarzda Entity1 munosabati hosil bo‘ladi. Kursorni ustiga olib kelib, 2
marotaba bosamiz. Entity Properties oynasi ochiladi. General bo‘limida munosabatga Umumiyjadval deb
nom beramiz:

7-rasm

Attributes bo‘limiga o‘tamiz va Add tugmasi yordamida 12 ta atribut qo‘shamiz.

4
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

8-rasm

Edit tugmasi yordamida Attribute Properties oynasini ochamiz va atributning xususiyatlarini beramiz.
Atributga TN deb nom beramiz, turini Integer deb tanlaymiz va OK tugmasini bosamiz.

9-rasm

5
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Keyingi atribut Ismi, turi Varchar, uzunligi length 20 ta belgi va OK tugmasini bosamiz.

10-rasm

Qolgan atributlarning nomlari, turlari va uzunliklarini ham shu tariqa aniqlab chiqamiz:

11-rasm

6
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Atributlarni aniqlab bo‘lgach, kalitlarni kiritamiz. Buning uchun Kays bo‘limiga o‘tib, Add tugmasi
yordamida 2 ta kalit qo‘shamiz:

1) TN atributi uchun a_tn birlamchi noyob kalit

12-rasm

2) pas_ser, pas_raq atributlariga tarkibli k_ps noyob kalit qo‘yamiz. Buning uchun Edit tugmasini bosib
pas_ser, pas_raq atributlarini ro‘yhatning o‘ng qismiga o‘tkazamiz va OK tugmasini bosamiz.

7
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

13-rasm

14-rasm

Umumiyjadval munosabatimiz tayyor holatga keldi:

8
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

15-rasm

Endi Fakultetlar munosabatini yaratamiz. Buning uchun Entities papkasining ustiga o‘ng tugmani bosib,
Add Entity buyrug‘ini tanlaymiz va All Items oynasida hosil bo‘lgan yangi munosabatga Fakultetlar deb nom
beramiz.

16-rasm

Attributes bo‘limga o‘tib, atributlarni kiritamiz:

9
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

17-rasm

Keys bo‘limiga o‘tib, pk_fak_n kalit qo‘shamiz:

10
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

18-rasm

OK tugmasini bosamiz. Fakultetlar munosabati ham tayyor.

Endi Yonalishlar munosabatini yaratamiz.

19-rasm

11
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Attributes bo‘limiga o‘tib, atributlarni kiritamiz:

20-rasm

Keys bo‘limiga o‘tib, pk_yon_n kalit qo‘shamiz:

21-rasm

OK tugmasini bosamiz.

Navbatdagi munosabat Baholar.

12
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

22-rasm

Attributes bo‘limiga o‘tib, atributlarni kiritamiz:

23-rasm

OK tugmasini bosamiz.

13
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

So‘nggi munosabat Fanlar:

24-rasm

Attributes bo‘limiga o‘tib, atributlarni kiritamiz:

14
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

25-rasm

26-rasm.

15
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Keys bo‘limiga o‘tib, pk_ fan_n kalit qo‘shamiz:

27-rasm

OK tugmasini bosamiz.

Xuddi shunday

16
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Barcha munosabatlarni hosil qilib oldik. Endi bu munosabatlarni tashqi kalitlar yordamida bog‘lab
chiqamiz. Buning uchun Objects menyusidan Relationship buyrug‘ini tanlaymiz. Avval Fakultetlar

17
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

munosabatining ustida sichqonchani bosib, keyin Umumiyjadval munosabatining ustida sichqonchani


bosamiz.

Hosil bo‘lgan chiziqning ustida sichqonchani 2 marta bosib, tashqi kalitni xususiyatlarini o‘zgartirish
mumkin. Bu aloqani Magistrant-Fakultet deb nomlaymiz:

Rasm 20.36.

Endi yaratgan modelimizning xatosini tekshiramiz. Buning uchun Model menyusidan Verify Model…
buyrug‘ini tanlaymiz.

Rasm 20.37.

Ochilgan oynadagi Verify tugmasini bosamiz:

18
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Rasm 20.38.

Pastdagi ro‘yhatga e’tibor beramiz:

• Number of Errors: 0
• Number of Warnings: 0
Ya’ni xato yo‘q.

Universal model tayyor bo‘ldi. Endi bu tayyor model ustida ixtiyoriy ishlarni amalga oshirish mumkin. Biz
esa, File -> Sync & Convert -> Simple Model Conversion… buyruqlar ketma-ketligini bajaramiz:

Rasm 20.39.

19
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Quyidagi ro‘yhatdan kerakli BBBT tanlab konvertatsiya qilishimiz mumkin.

Rasm 20.40.

Misol tariqasida ro‘yxatdan PostgreSQL 9.0 ni tanlaymiz.

Convert tugmasini bosamiz va quyidagi fizik modelni xosil qilamiz:

20
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Berilganlarning mantiqiy modelini yaratish


Endi loyihamizga mantiqiy modelni qo‘shamiz. Buning uchun 20.3 rasmdan 20.8 rasmgacha bo‘lgan
bosqichdagi ishlarni takrorlaymiz:

• modelga Mantiqiy deb nom beramiz;


• Logical Model Explorer →Entities→ Add Entity → All Items →Entity1 → Umumiyjadval
• Attributes bo‘limiga o‘tamiz va Add tugmasi yordamida 11 ta atribut qo‘shamiz (20.41 rasm.).

Rasm 20.41.

Edit tugmasi yordamida Attribute Properties oynasini ochamiz va atributning xususiyatlarini beramiz. TN
deb nom beramiz, turini Integer deb tanlaymiz, Mandatory qiymat berish shart, degan belgini kiritamiz va
OK tugmasini bosamiz.

21
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Rasm 20.42.

Mantiqiy model ustida bajariladigan qolgan vazifalarni bajarish uchun 20.10 rasmdan 20.37 rasmgacha
bo‘lgan bosqichdagi ishlarni takrorlaymiz:

• keyingi atribut familiya, turi Varchar, uzunligi length 20 ta belgi, OK;


• qolgan atributlarni ham shu tariqa to‘ldirib chiqamiz;
• ichki kalitlarni kiritamiz. Buning uchun Unique Identifiers bo‘limiga o‘tib, Add tugmasi yordamida
2 ta kalit qo‘shamiz – zn atributi uchun pk_zn 1-darajali noyob kalitni, hamda ras_ser, pas_raq
atributlariga tarkibli n_ps noyob kalit qo‘yamiz. Buning uchun Edit tugmasini bosib pas_ser,
pas_raq atributlarini ro‘yhatning o‘ng qismiga o‘tkazamiz, OK. Umumiyjadval munosabatimiz
tayyor holatga keladi;
• Fakultetlar munosabatini yaratamiz. Buning uchun Entities papkasining ustiga o‘ng tugmani bosib,
Add Entity buyrug‘ini tanlaymiz va All Items oynasida hosil bo‘lgan yangi munosabatga Fakultetlar
deb nom beramiz;
• attributes bo‘limiga o‘tib, atributlarini kiritamiz;
• Unique Identifiers bo‘limiga o‘tib, pk_fak_n kalit qo‘shamiz, OK tugmasini bosamiz. Fakultetlar
munosabati ham tayyor holatga keladi;
• Yonalishlar munosabatini yaratamiz. Attributes bo‘limga o‘tib atributlarini kiritamiz;
• Unique Identifiers bo‘limiga o‘tib pk_yon_n kalit qo‘shamiz, OK tugmasini bosamiz. Yonalishlar
munosabati ham tayyor holatga keladi;
• navbatdagi munosabat Baholar. Attributes bo‘limga o‘tib atributlarini kiritamiz; OK tugmasini
bosamiz. Baholar munosabati ham tayyor holatga keladi;
• so‘nggi munosabat Fanlar. Attributes bo‘limga o‘tib atributlarini kiritamiz;
• Unique Identifiers bo‘limiga o‘tib, pk_ fan_n kalit qo‘shamiz, OK tugmasini bosamiz. Fanlar
munosabati ham tayyor holatga keladi;
• munosabatlarni tashqi kalitlar yordamida bog‘lab chiqamiz. Objects menyusidan Relationship
buyrug‘ini tanlaymiz. Keyin Fakultetlar munosabatining ustiga sichqonchani bosib, Umumiyjadval

22
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

munosabatining ustiga sichqonchani bosamiz. Hosil bo‘lgan chiziqning ustiga 2 marta bosib, tashqi
kalitni xususiyatlarini o‘zgartirish mumkin. Bu aloqani Magistrant-Fakultet deb nomlaymiz;
• keyingi tashqi kalit Yonalishlar va Umumiyjadval munosabatlari orasida bo‘ladi. Bu aloqani
Magistrant-Yonalish deb nomlaymiz;
• keyingi tashqi kalit Royhat va Baholar munosabatlari orasida bo‘ladi. Bu aloqani Magistrant-Baho
deb nomlaymiz;
• so‘nggi aloqa Fanlar va Baholar munosabatlari orasida bo‘ladi. Bu aloqani Fan-Baho deb
nomlaymiz.
Natijada ekranda quyidagicha chizma hosil bo‘ladi:

Rasm 20.43.

Endi, yaratilgan mantiqiy modelimizning xatosini tekshiramiz. Buning uchun Model menyusidan Verify
Model… buyrug‘ini tanlaymiz.

Rasm 20.44.

Ochilgan oynadagi Verify tugmasini bosamiz:

23
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Rasm 20.45.

20.45 rasmda keltirilgan ekran pastidagi ro‘yhatga e’tibor beramiz:

• Number of Errors: 0
• Number of Warnings: 0
Ya’ni xato yo‘q.

Mantiqiy model tayyor bo‘ldi.

Berilganlarning fizik modellashtirish


Berilganlarning fizik modellashtirish uchun mantiqiy modelni fizik ko‘rinishga o‘tkazamiz. Buning uchun
File -> Sync & Convert -> Simple Model Conversion… buyruqlar ketma-ketligini bajaramiz:

Rasm 20.46.

Biz yanada tushunarli bo‘lishi uchun fizik modelni boshыa ko‘rinishda yaratamiz:

24
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

1. Ochilgan oynadan To Database ga PostgreSQL 9.0 ni tanlaymiz va Fizik PostgreSQL deb nomlaymiz.

Rasm 20.47.

Convert tugmasini bosamiz. Natijada PostgreSQL uchun mos keladigan fizik model hosil bo‘ladi.

Rasm 20.48.

Endi hosil bo‘lgan fizik modelga Magistrant_S va Baholar_S nomli 2 ta so‘rov qo‘shamiz.

25
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Natijada 20.55 rasmdagi ER-diagramma hosil bo‘ladi:

Rasm 20.55.

Magistratura o‘quv loyihasining berilganlar bazasi tayyor holatga keldi.

PostgreSQL uchun DDL Script


Endi PostgreSQL uchun DDL Script ni hosil qilishdan iborat. Buning uchun Model menyusidan Generate
DDL Script buyrug‘ini tanlaymiz:

Rasm 20.56.

26
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Rasm 20.57.

Natijada 20.57 rasmdagi oyna ochiladi. Bu yerdan generatsiya qilish uchun zarur bo‘lgan ob’ektlarni
belgilab, Generate tugmasini bosamiz.

Endi hosil bo‘lgan DDL Script ni PostgreSQL 9.0 ga chaqiramiz.

Serverni ishga tushirib, yangi baza yaratamiz:

27
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Hosil qilgan bazamizning ustiga sichqoncha o‘ng tugmasini bosib skript yaratamiz:

Quyidagi natija hosil bo‘ladi:

28
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

Magistratura bazasidagi mavjud jadvallarni atributlari bo‘yicha to‘ldirish mumkin.

Adabiyotlar ro‘yhati

1. Т.А.Хўжакулов. Маълумотлар базаси. Дарслик. T.:TATU, 2022. - 260 б.


2. Т.А.Хужакулов. База данных. Учебник. T.:TATU, 2022. - 260 с.

29
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI MA’LUMOTLAR
HISOB
UNIVERSITETI SAMARQAND FILIALI BAZASI DTBS16MBK

3. Xo‘jaqulov T.A. Usmonov J.T. Ma’lumotlar bazasini boshqarish tizimi//


o’quv qo’llanma. - T.: Aloqachi, 2018. - 96 b.
4. Xo’jaqulov T. A., Usmonov J. T. Ma’lumotlar bazasini boshqarish tizimi
fanidan laboratoriya ishlarini bajarish bo’yicha uslubiy ko’rsatma - T. :
TATU, 2016. - 55 b.
5. Т.А.Хужакулов. Система управления базами данных. Учебник.
T.:TATU, 2020. - 280 с.
6. Голешина Л. Базы данных: учеб. Пособие // – 4-э изд., перераб. и
доп. – М.: ФОРУМ: ИНФРА -М, 2018. – 400 с.
7. Mартишин С.А. Базы данных. Практическое применение СУБД SQL –
NoSQL – типа для проектирования информатсионных систем: учеб.
Пособие // - Москва: ИД «ФОРУМ» - ИНФРА-М, 2019, – 368 с.
8. Rahul Batra. SQL Primer An Accelerated introduction to SQL Basics.//
Gurgaon, India. 2019. –p 194.
9. Pоликов А.М. Безопасност ORACLE глазами аудитории: Нападение и
защита. –Москва. 2017. –336 с.
10. Эric Redmond, Jim R. Wilson. A Guide to Modern Databases and the
NoSQL Movement. USA, 2015. – p. 347.
11. Elmasri, R., S. B. Navathe: Fundamentals of Database Systems (5th
Ed.)// Addison Wesley, 2015. – 671p.

30

You might also like