-- 1. Ma'lumotlar bazasini yaratish
DROP DATABASE IF EXISTS kutubxona;
CREATE DATABASE kutubxona;
USE kutubxona;
-- 2. Mualliflar jadvali
CREATE TABLE mualliflar (
id INT AUTO_INCREMENT PRIMARY KEY,
ism VARCHAR(100) NOT NULL,
familiya VARCHAR(100) NOT NULL
);
-- 3. Kitoblar jadvali
CREATE TABLE kitoblar (
id INT AUTO_INCREMENT PRIMARY KEY,
nomi VARCHAR(255) NOT NULL,
muallif_id INT,
yil INT,
janr VARCHAR(100),
mavjud INT DEFAULT 1,
FOREIGN KEY (muallif_id) REFERENCES mualliflar(id)
ON DELETE SET NULL
ON UPDATE CASCADE
);
-- 4. Talabalar jadvali
CREATE TABLE talabalar (
id INT AUTO_INCREMENT PRIMARY KEY,
ism VARCHAR(100) NOT NULL,
familiya VARCHAR(100) NOT NULL,
fakultet VARCHAR(100),
telefon VARCHAR(20)
);
-- 5. Ijaralar jadvali (kitob berish tarixi)
CREATE TABLE ijaralar (
id INT AUTO_INCREMENT PRIMARY KEY,
talaba_id INT NOT NULL,
kitob_id INT NOT NULL,
olingan_sana DATE NOT NULL,
qaytarilgan_sana DATE,
FOREIGN KEY (talaba_id) REFERENCES talabalar(id)
ON DELETE CASCADE
ON UPDATE CASCADE,
FOREIGN KEY (kitob_id) REFERENCES kitoblar(id)
ON DELETE CASCADE
ON UPDATE CASCADE
);
-- 6. Adminlar jadvali (kutubxonachilar)
CREATE TABLE adminlar (
id INT AUTO_INCREMENT PRIMARY KEY,
login VARCHAR(50) NOT NULL UNIQUE,
parol VARCHAR(255) NOT NULL,
ism VARCHAR(100)
);