2-bo‘lim

MySQL bilan ishlashni boshlash

XAMPP orqali MySQL ni ishga tushirish, konsol va phpMyAdmin, birinchi baza yaratish va SQL yozuv qoidalari.

🕑 13 daqiqa o‘qish 📄 718 so‘z 👁 5 marta ko‘rilgan
Ushbu bo‘lim mundarijasi
  1. MySQL ni ishga tushirish
  2. Ikki xil ishlash usuli
  3. Konsol orqali ulanish
  4. phpMyAdmin orqali
  5. Birinchi buyruqlar
  6. SQL yozuv qoidalari
  7. Ishchi bazamizni yaratish
  8. Foydali konsol buyruqlari
  9. SQL faylini bajarish
  10. Xulosa

Nazariyadan amaliyotga o'tamiz. Bu bo'lim oxirida sizda ishlaydigan ma'lumotlar bazasi bo'ladi.

MySQL ni ishga tushirish #

XAMPP allaqachon o'rnatilgan bo'lsa:

  1. XAMPP Control Panel ni oching
  2. MySQL qatoridagi Start tugmasini bosing
  3. Holat yashil rangga aylanishi kerak
MySQL ishga tushmasa

Eng ko'p uchraydigan sabab - 3306-port band. Yechimlari:

  • Boshqa MySQL/MariaDB o'rnatilgan bo'lsa, uni to'xtating
  • Skype yoki boshqa dastur portni egallagan bo'lishi mumkin
  • XAMPP Configmy.ini da portni 3307 ga o'zgartiring

Xato jurnalini Logs tugmasi orqali ko'rishingiz mumkin.

Ikki xil ishlash usuli #

Konsol (buyruq satri) mysql -u root -p mysql> SHOW DATABASES; +--------------------+ | Database | Tez, aniq, skriptlarda ishlatiladi Biz shundan foydalanamiz phpMyAdmin (brauzer) localhost/phpmyadmin Bazalar ro'yxati Jadval mazmuni tugmalar bilan Ko'rgazmali, boshlovchi uchun qulay Tez ko'rish uchun foydali
Ikkalasi ham bir xil bazaga ulanadi - farq faqat interfeysda

Konsol orqali ulanish #

Terminal
cd C:\xampp\mysql\bin
mysql -u root

Parol o'rnatilgan bo'lsa:

Terminal
mysql -u root -p
Natija
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 10.4.32-MariaDB

MariaDB [(none)]>
PATH ga qo'shish

Har safar cd C:\xampp\mysql\bin yozmaslik uchun bu papkani tizim PATH iga qo'shing. Shundan keyin istalgan joydan mysql -u root deb yozish yetarli bo'ladi.

Windows: Win + Rsysdm.cplAdvancedEnvironment VariablesPathEditNewC:\xampp\mysql\bin

phpMyAdmin orqali #

Brauzerda http://localhost/phpmyadmin manzilini oching. Bu grafik interfeys - jadvallarni ko'rish, tahrirlash va so'rovlarni sinash uchun qulay.

Nima uchun konsol?

phpMyAdmin qulay, lekin u SQL ni yashiradi - tugmalarni bosasiz, so'rov o'zi yoziladi. Konsolda esa har bir so'rovni o'zingiz yozasiz va shu orqali tilni haqiqatan o'rganasiz.

Amalda ham ishlab chiqarish serverlarida phpMyAdmin bo'lmaydi - faqat konsol.

Birinchi buyruqlar #

SQL
-- Mavjud bazalar ro'yxati
SHOW DATABASES;

-- Yangi baza yaratish
CREATE DATABASE maktab
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_unicode_ci;

-- Baza bilan ishlashni boshlash
USE maktab;

-- Joriy bazadagi jadvallar
SHOW TABLES;

-- Joriy baza nomi
SELECT DATABASE();

-- MySQL versiyasi
SELECT VERSION();

-- Bazani o'chirish (ehtiyot bo'ling!)
DROP DATABASE maktab;
Natija
MariaDB [(none)]> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| phpmyadmin         |
+--------------------+
4 rows in set (0.002 sec)
utf8mb4 ni albatta ko'rsating
SQL
-- YOMON: o'zbekcha harflar buzilishi mumkin
CREATE DATABASE maktab;

-- YAXSHI
CREATE DATABASE maktab
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_unicode_ci;

MySQL dagi eski utf8 to'liq emas - u faqat 3 baytli belgilarni qo'llab-quvvatlaydi. utf8mb4 esa emojilar va barcha Unicode belgilarini to'g'ri saqlaydi.

O'zbek lotin alifbosidagi o', g' belgilari va Kirill yozuvi uchun bu majburiy.

SQL yozuv qoidalari #

SQL
-- 1. Har bir buyruq nuqta-vergul bilan tugaydi
SELECT * FROM talabalar;

-- 2. Kalit so'zlar registrga sezgir emas
select * from talabalar;      -- ishlaydi
SELECT * FROM talabalar;      -- lekin shunday yozish qabul qilingan

-- 3. Bir necha satrga bo'lish mumkin
SELECT ism, yosh
FROM talabalar
WHERE yosh > 20
ORDER BY ism;

-- 4. Izohlar
-- Bir satrli izoh
# MySQL da bu ham ishlaydi
/* Ko'p
   satrli izoh */
Kelishilgan uslub
ElementUslubMisol
Kalit so'zlarKATTA harfSELECT, FROM, WHERE
Jadval va ustun nomlarikichik harftalabalar, tugilgan_sana
So'zlar orasipastki chiziqoxirgi_kirish
Jadval nomiko'plikdatalabalar, buyurtmalar

Bu majburiy emas, lekin kodni ancha o'qishli qiladi.

Nuqta-vergulni unutmaslik
SQL
MariaDB [maktab]> SELECT * FROM talabalar
    ->
    ->

-> belgisi "buyruq hali tugamadi" degani. Nuqta-vergul qo'yib Enter bosing. Buyruqni butunlay bekor qilish uchun \c yozing.

Ishchi bazamizni yaratish #

Butun darslik davomida maktab bazasi bilan ishlaymiz:

SQL
CREATE DATABASE IF NOT EXISTS maktab
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_unicode_ci;

USE maktab;

Birinchi jadvalni yaratamiz:

SQL
CREATE TABLE talabalar (
    id       INT AUTO_INCREMENT PRIMARY KEY,
    ism      VARCHAR(120) NOT NULL,
    yosh     INT,
    shahar   VARCHAR(60),
    baho     DECIMAL(4,1)
);

Tekshiramiz:

SQL
SHOW TABLES;
DESCRIBE talabalar;
Natija
+------------------+
| Tables_in_maktab |
+------------------+
| talabalar        |
+------------------+

+--------+--------------+------+-----+---------+----------------+
| Field  | Type         | Null | Key | Default | Extra          |
+--------+--------------+------+-----+---------+----------------+
| id     | int(11)      | NO   | PRI | NULL    | auto_increment |
| ism    | varchar(120) | NO   |     | NULL    |                |
| yosh   | int(11)      | YES  |     | NULL    |                |
| shahar | varchar(60)  | YES  |     | NULL    |                |
| baho   | decimal(4,1) | YES  |     | NULL    |                |
+--------+--------------+------+-----+---------+----------------+

Ma'lumot qo'shamiz:

SQL
INSERT INTO talabalar (ism, yosh, shahar, baho) VALUES
    ('Husanboy Qodirov', 25, 'Namangan',  4.6),
    ('Sardor Aliyev',    25, 'Toshkent',  3.8),
    ('Malika Yusupova',  21, 'Buxoro',    4.9),
    ('Bekzod Rasulov',   23, 'Toshkent',  3.2);

Va birinchi so'rovimizni yozamiz:

SQL
SELECT * FROM talabalar;
Natija
+----+------------------+------+-----------+------+
| id | ism              | yosh | shahar    | baho |
+----+------------------+------+-----------+------+
|  1 | Husanboy Qodirov |   25 | Namangan  |  4.6 |
|  2 | Sardor Aliyev    |   25 | Toshkent  |  3.8 |
|  3 | Malika Yusupova  |   21 | Buxoro    |  4.9 |
|  4 | Bekzod Rasulov   |   23 | Toshkent  |  3.2 |
+----+------------------+------+-----------+------+
4 rows in set (0.001 sec)

Tabriklaymiz - siz ma'lumotlar bazasi bilan ishlashni boshladingiz!

Foydali konsol buyruqlari #

BuyruqVazifasi
SHOW DATABASES;Bazalar ro'yxati
USE baza;Bazani tanlash
SHOW TABLES;Jadvallar ro'yxati
DESCRIBE jadval;Jadval tuzilmasi
SHOW CREATE TABLE jadval;To'liq yaratish so'rovi
SELECT DATABASE();Joriy baza
STATUS;Ulanish ma'lumotlari
\cBuyruqni bekor qilish
exit; yoki \qChiqish
Natijani vertikal ko'rish

Ustunlar ko'p bo'lsa jadval buzilib ketadi. ; o'rniga \G yozing:

SQL
SELECT * FROM talabalar WHERE id = 1\G
Natija
*************************** 1. row ***************************
    id: 1
   ism: Husanboy Qodirov
  yosh: 22
shahar: Samarqand
  baho: 4.6

SQL faylini bajarish #

Uzun so'rovlarni faylga yozib, keyin bajarish qulay:

maktab.sql:

SQL
CREATE DATABASE IF NOT EXISTS maktab
    CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

USE maktab;

CREATE TABLE talabalar (
    id     INT AUTO_INCREMENT PRIMARY KEY,
    ism    VARCHAR(120) NOT NULL,
    yosh   INT,
    shahar VARCHAR(60),
    baho   DECIMAL(4,1)
);

INSERT INTO talabalar (ism, yosh, shahar, baho) VALUES
    ('Husanboy Qodirov', 25, 'Namangan',  4.6),
    ('Sardor Aliyev',    25, 'Toshkent',  3.8);

Bajarish:

Terminal
mysql -u root < maktab.sql

Yoki konsol ichidan:

SQL
SOURCE D:/loyihalar/maktab.sql;
Faylni saqlash uslubi

SQL fayllarini loyihangizda versiya nazoratida saqlang. Shunda:

  • Bazani istalgan kompyuterda bir buyruq bilan tiklash mumkin
  • O'zgarishlar tarixi ko'rinadi
  • Jamoadagilar bir xil tuzilma bilan ishlaydi

Bu darslikdagi barcha misollarni bitta .sql faylda to'plab boring.

Amaliy topshiriq
  1. XAMPP da MySQL ni ishga tushiring.
  2. Konsol orqali ulaning va SHOW DATABASES; bajaring.
  3. kutubxona nomli baza yarating (utf8mb4 bilan).
  4. Unda kitoblar jadvalini yarating: id, nomi, muallif, yil, sahifalar.
  5. DESCRIBE bilan tuzilmani tekshiring.
  6. Kamida 5 ta kitob qo'shing.
  7. SELECT * FROM kitoblar; bilan hammasini chiqaring.
  8. Barcha buyruqlarni kutubxona.sql fayliga saqlang va uni qaytadan bajarib ko'ring.
  9. phpMyAdmin da ham shu bazani oching - farqni ko'ring.

Xulosa #

  • MySQL XAMPP Control Panel orqali ishga tushiriladi.
  • Konsol (mysql -u root) va phpMyAdmin - bir xil bazaga ikki xil kirish yo'li.
  • Baza yaratishda utf8mb4 ni ko'rsatish o'zbekcha matn uchun majburiy.
  • Har bir SQL buyrug'i nuqta-vergul bilan tugaydi.
  • Kalit so'zlar KATTA, jadval nomlari kichik harfda yozish - qabul qilingan uslub.
  • SHOW, USE, DESCRIBE - eng ko'p ishlatiladigan yordamchi buyruqlar.
  • SQL fayllarini saqlab borish bazani istalgan vaqtda tiklash imkonini beradi.

Keyingi bo'limda ma'lumot turlari va jadval yaratishni batafsil o'rganamiz.

Xatolik topdingizmi?

Imlo xatosi, ishlamaydigan kod yoki noto‘g‘ri ma‘lumotni ko‘rsangiz - bizga xabar bering. Har bir xabar administrator tomonidan ko‘rib chiqiladi.