6-modul · 1-dars: Database · SQL asoslari
Daraja: O'rta
Database · SQL asoslari. PostgreSQL bo‘yicha nazariya, amaliy namuna va mustaqil mashq.
Tushuntirish
## Dars maqsadi Database · SQL asoslari tushunchalarini farqlash, nima uchun kerakligini izohlash va kichik misolda qo‘llash.
## Nazariya Ma'lumotlar bazasi tartibli ma'lumotlar to'plami, DBMS esa uni yozish, izlash, himoyalash va tiklashni boshqaradigan dasturdir. RDBMS ma'lumotni bog'langan jadvallar orqali ifodalaydi; PostgreSQL shunday tizim. Hujjatli, kalit-qiymatli va graf bazalar boshqa ma'lumot modellaridan foydalanadi. Tanlovni shunchaki tezlik emas, bog'lanishlar, yaxlitlik va so'rovlar belgilaydi. SQL deklarativ: qanday algoritm yurishini emas, qanday natija kerakligini aytasiz; bajarish rejasini optimizator tanlaydi. DDL sxemani yaratadi yoki o'zgartiradi; DML qatorlarni o'zgartiradi; SELECT ko'pincha DQL deb ajratiladi; TCL tranzaksiyani boshqaradi; GRANT va REVOKE ruxsatlarni boshqaradi. Bu guruh nomlari SQLni o'rganish uchun qulay tasnifdir. Client-server modelida psql, pgAdmin yoki JDBC client bo'ladi; PostgreSQL server so'rovni bajaradi. Connection, database, schema va table bir xil narsa emas. Query ifoda, predikat, clause va kerak bo'lsa subquerydan tuziladi. Avval psql bilan kichik SELECTni bajaring, keyin ayni so'rovni Java orqali yuboring.
## Manbalar [Moduldagi savollar yo‘nalishi](https://github.com/jlkesh/pdp_online_java_lessons/blob/main/interviewquestions/6-module%28database%29.md) [Rasmiy qo‘llanma](https://www.postgresql.org/docs/current/)
Kod quyida o‘quv namunasi sifatida berilgan. To‘liq ilova uchun import, dependency va konfiguratsiya kerak bo‘lishi mumkin. SQLni faqat ajratilgan test bazasida bajaring.
Kod misoli
SELECT current_database(), current_user;
SELECT 2 + 3 AS natija;
Keng tarqalgan xatolar
- RDBMSni faqat Excel jadvali deb tushunmang: constraints, concurrency va tranzaksiyalar ham uning vazifasi.
Mashqlar
- Kundalik loyihasi uchun users, topics va entries o'rtasidagi bog'lanishlarni qog'ozda chizing.
- Kundalik loyihasi uchun uchta jadval chizib, ular orasidagi bog'lanishni izohlab bering.
Teglar: nazariya, pdp, modul-06