-- Baza kursu „Bazy danych INF.03” — biblioteka szkolna -- Jedna baza dla wszystkich przykładów i ćwiczeń. -- Import w phpMyAdmin: Import → wybierz plik → Wykonaj. SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; CREATE DATABASE IF NOT EXISTS `biblioteka_szkolna` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; USE `biblioteka_szkolna`; DROP TABLE IF EXISTS `opinie`; DROP TABLE IF EXISTS `rezerwacje`; DROP TABLE IF EXISTS `wypozyczenia`; DROP TABLE IF EXISTS `ksiazki_autorzy`; DROP TABLE IF EXISTS `ksiazki`; DROP TABLE IF EXISTS `pracownicy`; DROP TABLE IF EXISTS `uczniowie`; DROP TABLE IF EXISTS `klasy`; DROP TABLE IF EXISTS `autorzy`; DROP TABLE IF EXISTS `kategorie`; DROP TABLE IF EXISTS `wydawnictwa`; CREATE TABLE `klasy` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `nazwa` VARCHAR(10) NOT NULL, `wychowawca` VARCHAR(80) NOT NULL, `rok_szkolny` VARCHAR(9) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uq_klasy_nazwa` (`nazwa`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE `uczniowie` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `imie` VARCHAR(40) NOT NULL, `nazwisko` VARCHAR(60) NOT NULL, `klasa_id` INT UNSIGNED NOT NULL, `data_urodzenia` DATE NOT NULL, `email` VARCHAR(120) DEFAULT NULL, `telefon` VARCHAR(20) DEFAULT NULL, `aktywny` TINYINT(1) NOT NULL DEFAULT 1, PRIMARY KEY (`id`), UNIQUE KEY `uq_uczniowie_email` (`email`), KEY `idx_uczniowie_klasa` (`klasa_id`), CONSTRAINT `fk_uczniowie_klasa` FOREIGN KEY (`klasa_id`) REFERENCES `klasy` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE `autorzy` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `imie` VARCHAR(40) NOT NULL, `nazwisko` VARCHAR(60) NOT NULL, `kraj` VARCHAR(40) NOT NULL, `rok_urodzenia` SMALLINT UNSIGNED DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE `kategorie` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `nazwa` VARCHAR(60) NOT NULL, `kod` CHAR(3) NOT NULL, `opis` VARCHAR(255) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uq_kategorie_nazwa` (`nazwa`), UNIQUE KEY `uq_kategorie_kod` (`kod`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE `wydawnictwa` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `nazwa` VARCHAR(100) NOT NULL, `miasto` VARCHAR(60) NOT NULL, `telefon` VARCHAR(20) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uq_wydawnictwa_nazwa` (`nazwa`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE `ksiazki` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `tytul` VARCHAR(150) NOT NULL, `kategoria_id` INT UNSIGNED NOT NULL, `wydawnictwo_id` INT UNSIGNED NOT NULL, `rok_wydania` SMALLINT UNSIGNED NOT NULL, `isbn` CHAR(13) DEFAULT NULL, `cena` DECIMAL(6,2) NOT NULL, `stan` INT NOT NULL DEFAULT 0, `dostepna` TINYINT(1) NOT NULL DEFAULT 1, PRIMARY KEY (`id`), UNIQUE KEY `uq_ksiazki_isbn` (`isbn`), KEY `idx_ksiazki_kategoria` (`kategoria_id`), KEY `idx_ksiazki_wydawnictwo` (`wydawnictwo_id`), CONSTRAINT `fk_ksiazki_kategoria` FOREIGN KEY (`kategoria_id`) REFERENCES `kategorie` (`id`), CONSTRAINT `fk_ksiazki_wydawnictwo` FOREIGN KEY (`wydawnictwo_id`) REFERENCES `wydawnictwa` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE `ksiazki_autorzy` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `ksiazka_id` INT UNSIGNED NOT NULL, `autor_id` INT UNSIGNED NOT NULL, `rola` VARCHAR(30) NOT NULL DEFAULT 'autor', PRIMARY KEY (`id`), UNIQUE KEY `uq_ksiazki_autorzy` (`ksiazka_id`, `autor_id`), KEY `idx_ksiazki_autorzy_ksiazka` (`ksiazka_id`), KEY `idx_ksiazki_autorzy_autor` (`autor_id`), CONSTRAINT `fk_ksiazki_autorzy_ksiazka` FOREIGN KEY (`ksiazka_id`) REFERENCES `ksiazki` (`id`) ON DELETE CASCADE, CONSTRAINT `fk_ksiazki_autorzy_autor` FOREIGN KEY (`autor_id`) REFERENCES `autorzy` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE `pracownicy` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `imie` VARCHAR(40) NOT NULL, `nazwisko` VARCHAR(60) NOT NULL, `stanowisko` VARCHAR(40) NOT NULL, `pensja` DECIMAL(8,2) NOT NULL, `data_zatrudnienia` DATE NOT NULL, `email` VARCHAR(120) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uq_pracownicy_email` (`email`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE `wypozyczenia` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `uczen_id` INT UNSIGNED NOT NULL, `ksiazka_id` INT UNSIGNED NOT NULL, `pracownik_id` INT UNSIGNED NOT NULL, `data_wypozyczenia` DATE NOT NULL, `termin_zwrotu` DATE NOT NULL, `data_zwrotu` DATE DEFAULT NULL, `kara` DECIMAL(6,2) NOT NULL DEFAULT 0.00, `status` ENUM('w trakcie','zwrocone','przeterminowane') NOT NULL DEFAULT 'w trakcie', PRIMARY KEY (`id`), KEY `idx_wypozyczenia_uczen` (`uczen_id`), KEY `idx_wypozyczenia_ksiazka` (`ksiazka_id`), KEY `idx_wypozyczenia_pracownik` (`pracownik_id`), KEY `idx_wypozyczenia_termin` (`termin_zwrotu`), CONSTRAINT `fk_wypozyczenia_uczen` FOREIGN KEY (`uczen_id`) REFERENCES `uczniowie` (`id`), CONSTRAINT `fk_wypozyczenia_ksiazka` FOREIGN KEY (`ksiazka_id`) REFERENCES `ksiazki` (`id`), CONSTRAINT `fk_wypozyczenia_pracownik` FOREIGN KEY (`pracownik_id`) REFERENCES `pracownicy` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE `rezerwacje` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `uczen_id` INT UNSIGNED NOT NULL, `ksiazka_id` INT UNSIGNED NOT NULL, `data_rezerwacji` DATE NOT NULL, `status` ENUM('aktywna','anulowana','zrealizowana') NOT NULL DEFAULT 'aktywna', `uwagi` VARCHAR(255) DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_rezerwacje_uczen` (`uczen_id`), KEY `idx_rezerwacje_ksiazka` (`ksiazka_id`), CONSTRAINT `fk_rezerwacje_uczen` FOREIGN KEY (`uczen_id`) REFERENCES `uczniowie` (`id`), CONSTRAINT `fk_rezerwacje_ksiazka` FOREIGN KEY (`ksiazka_id`) REFERENCES `ksiazki` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE `opinie` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, `uczen_id` INT UNSIGNED NOT NULL, `ksiazka_id` INT UNSIGNED NOT NULL, `ocena` TINYINT NOT NULL, `komentarz` VARCHAR(500) DEFAULT NULL, `data_dodania` DATE NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uq_opinie_uczen_ksiazka` (`uczen_id`, `ksiazka_id`), KEY `idx_opinie_ksiazka` (`ksiazka_id`), CONSTRAINT `fk_opinie_uczen` FOREIGN KEY (`uczen_id`) REFERENCES `uczniowie` (`id`), CONSTRAINT `fk_opinie_ksiazka` FOREIGN KEY (`ksiazka_id`) REFERENCES `ksiazki` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; SET FOREIGN_KEY_CHECKS = 1; -- Dane INSERT INTO `klasy` (`id`, `nazwa`, `wychowawca`, `rok_szkolny`) VALUES (1, '1A', 'Anna Nowak', '2026/2027'), (2, '1B', 'Piotr Zieliński', '2026/2027'), (3, '2A', 'Katarzyna Wójcik', '2026/2027'), (4, '2B', 'Marek Lewandowski', '2026/2027'), (5, '3A', 'Ewa Kamińska', '2026/2027'); INSERT INTO `uczniowie` (`id`, `imie`, `nazwisko`, `klasa_id`, `data_urodzenia`, `email`, `telefon`, `aktywny`) VALUES (1, 'Anna', 'Kowalska', 1, '2011-02-14', 'anna.kowalska@example.com', '600 100 101', 1), (2, 'Jan', 'Nowak', 1, '2011-05-03', 'jan.nowak@example.com', '600 100 102', 1), (3, 'Zofia', 'Wiśniewska', 1, '2011-07-19', NULL, NULL, 1), (4, 'Piotr', 'Wójcik', 1, '2011-11-02', 'piotr.wojcik@example.com', '600 100 104', 1), (5, 'Maja', 'Kamińska', 1, '2011-03-27', NULL, '600 100 105', 1), (6, 'Kacper', 'Lewandowski', 2, '2011-01-09', 'kacper.lewandowski@example.com', NULL, 1), (7, 'Julia', 'Zielińska', 2, '2011-06-21', 'julia.zielinska@example.com', '600 100 107', 1), (8, 'Filip', 'Szymański', 2, '2011-09-13', NULL, NULL, 1), (9, 'Oliwia', 'Woźniak', 2, '2011-12-05', 'oliwia.wozniak@example.com', '600 100 109', 1), (10, 'Szymon', 'Dąbrowski', 2, '2011-04-16', NULL, '600 100 110', 0), (11, 'Natalia', 'Kozłowska', 3, '2010-02-08', 'natalia.kozlowska@example.com', NULL, 1), (12, 'Mateusz', 'Jankowski', 3, '2010-05-30', 'mateusz.jankowski@example.com', '600 100 112', 1), (13, 'Amelia', 'Mazur', 3, '2010-08-11', NULL, '600 100 113', 1), (14, 'Bartosz', 'Kwiatkowski', 3, '2010-10-24', 'bartosz.kwiatkowski@example.com', NULL, 1), (15, 'Lena', 'Krawczyk', 3, '2010-12-17', NULL, NULL, 1), (16, 'Igor', 'Piotrowski', 4, '2010-03-06', 'igor.piotrowski@example.com', '600 100 116', 1), (17, 'Zuzanna', 'Grabowska', 4, '2010-07-28', 'zuzanna.grabowska@example.com', NULL, 1), (18, 'Antoni', 'Pawłowski', 4, '2010-09-09', NULL, '600 100 118', 1), (19, 'Hanna', 'Michalska', 4, '2010-11-22', NULL, NULL, 1), (20, 'Wiktor', 'Nowicki', 4, '2010-01-31', 'wiktor.nowicki@example.com', '600 100 120', 0), (21, 'Maria', 'Adamczyk', 5, '2009-04-12', 'maria.adamczyk@example.com', NULL, 1), (22, 'Jakub', 'Dudek', 5, '2009-06-25', NULL, '600 100 122', 1), (23, 'Aleksandra', 'Zając', 5, '2009-08-07', 'aleksandra.zajac@example.com', NULL, 1), (24, 'Michał', 'Król', 5, '2009-10-19', NULL, '600 100 124', 1); INSERT INTO `autorzy` (`id`, `imie`, `nazwisko`, `kraj`, `rok_urodzenia`) VALUES (1, 'Adam', 'Mickiewicz', 'Polska', 1798), (2, 'Bolesław', 'Prus', 'Polska', 1847), (3, 'Wisława', 'Szymborska', 'Polska', 1923), (4, 'Olga', 'Tokarczuk', 'Polska', 1962), (5, 'Andrzej', 'Sapkowski', 'Polska', 1948), (6, 'Joanne', 'Rowling', 'Wielka Brytania', 1965), (7, 'George', 'Orwell', 'Wielka Brytania', 1903), (8, 'Antoine', 'de Saint-Exupéry', 'Francja', 1900), (9, 'Astrid', 'Lindgren', 'Szwecja', 1907), (10, 'Isaac', 'Asimov', 'USA', 1920), (11, 'Stanisław', 'Lem', 'Polska', 1921), (12, 'Henryk', 'Sienkiewicz', 'Polska', 1846), (13, 'Jan', 'Brzechwa', 'Polska', 1898), (14, 'Maria', 'Konopnicka', 'Polska', 1842), (15, 'Yuval', 'Harari', 'Izrael', 1976), (16, 'Stephen', 'Hawking', 'Wielka Brytania', 1942), (17, 'Jan', 'Paweł II', 'Polska', 1920), (18, 'Barbara', 'Goldsmith', 'USA', 1931), (19, 'Norman', 'Davies', 'Wielka Brytania', 1939), (20, 'Larry', 'Ullman', 'USA', 1969), (21, 'Marcin', 'Krajewski', 'Polska', 1980), (22, 'Krzysztof', 'Krawczyk', 'Polska', 1975); INSERT INTO `kategorie` (`id`, `nazwa`, `kod`, `opis`) VALUES (1, 'Literatura piękna', 'LIT', 'Powieści, opowiadania i poezja'), (2, 'Fantastyka', 'FAN', 'Science fiction, fantasy i horror'), (3, 'Nauka popularna', 'NAU', 'Popularnonaukowe książki o świecie'), (4, 'Biografie', 'BIO', 'Życiorysy znanych osób'), (5, 'Historia', 'HIS', 'Historia Polski i świata'), (6, 'Dzieci i młodzież', 'DZI', 'Książki dla młodszych czytelników'), (7, 'Komiks', 'KOM', 'Komiksy i powieści graficzne'), (8, 'Podręczniki', 'POD', 'Podręczniki i książki techniczne'); INSERT INTO `wydawnictwa` (`id`, `nazwa`, `miasto`, `telefon`) VALUES (1, 'Wydawnictwo Literackie', 'Kraków', '12 123 45 67'), (2, 'Znak', 'Kraków', '12 234 56 78'), (3, 'Muza', 'Warszawa', '22 345 67 89'), (4, 'Nasza Księgarnia', 'Warszawa', '22 456 78 90'), (5, 'Media Rodzina', 'Poznań', '61 567 89 01'), (6, 'Ossolineum', 'Wrocław', '71 678 90 12'); INSERT INTO `ksiazki` (`id`, `tytul`, `kategoria_id`, `wydawnictwo_id`, `rok_wydania`, `isbn`, `cena`, `stan`, `dostepna`) VALUES (1, 'Pan Tadeusz', 1, 6, 1834, '9788306012345', 39.9, 4, 1), (2, 'Lalka', 1, 6, 1890, '9788306012352', 49.9, 3, 1), (3, 'Quo vadis', 1, 6, 1896, '9788306012369', 44.9, 2, 1), (4, 'Wiedźmin: Ostatnie życzenie', 2, 3, 1993, '9788375900016', 54.9, 5, 1), (5, 'Harry Potter i Kamień Filozoficzny', 2, 5, 1997, '9788372780004', 59.9, 6, 1), (6, 'Rok 1984', 2, 3, 1949, '9788375900023', 42.9, 3, 1), (7, 'Folwark zwierzęcy', 1, 3, 1945, '9788375900030', 29.9, 4, 1), (8, 'Mały Książę', 6, 5, 1943, '9788372780011', 34.9, 7, 1), (9, 'Dzieci z Bullerbyn', 6, 4, 1947, '9788311000016', 39.9, 5, 1), (10, 'Bracia Lwie Serce', 6, 4, 1973, '9788311000023', 36.9, 4, 1), (11, 'Akademia Pana Kleksa', 6, 4, 1946, '9788311000030', 32.9, 6, 1), (12, 'Kosmos', 3, 3, 1966, '9788375900047', 49.9, 2, 1), (13, 'Niezwyciężony', 2, 3, 1964, '9788375900054', 46.9, 3, 1), (14, 'Fundacja', 2, 3, 1951, '9788375900061', 52.9, 2, 1), (15, 'Ja, robot', 2, 3, 1950, '9788375900078', 44.9, 4, 1), (16, 'Sapiens. Od zwierząt do bogów', 3, 2, 2011, '9788324023456', 69.9, 3, 1), (17, 'Krótka historia czasu', 3, 2, 1988, '9788324023463', 59.9, 2, 1), (18, 'Jan Paweł II. Biografia', 4, 2, 2014, '9788324023470', 79.9, 1, 0), (19, 'Maria Curie-Skłodowska', 4, 2, 2011, '9788324023487', 49.9, 2, 1), (20, 'Historia Polski', 5, 6, 2018, '9788304023494', 89.9, 1, 0), (21, 'Wiedźmin: Dom ze szkła', 7, 3, 2014, '9788375900108', 39.9, 2, 1), (22, 'PHP i MySQL. Tworzenie aplikacji', 8, 5, 2022, '9788372780028', 99.9, 8, 1), (23, 'Bazy danych. Od podstaw', 8, 5, 2023, '9788372780035', 109.9, 6, 1), (24, 'Pieśń o Rolandzie', 1, 6, 2020, '9788304023500', 39.9, 3, 1); INSERT INTO `ksiazki_autorzy` (`ksiazka_id`, `autor_id`, `rola`) VALUES (1, 1, 'autor'), (2, 2, 'autor'), (3, 12, 'autor'), (4, 5, 'autor'), (4, 21, 'współautor'), (5, 6, 'autor'), (6, 7, 'autor'), (7, 7, 'autor'), (8, 8, 'autor'), (9, 9, 'autor'), (10, 9, 'autor'), (11, 13, 'autor'), (12, 11, 'autor'), (13, 11, 'autor'), (14, 10, 'autor'), (15, 10, 'autor'), (16, 15, 'autor'), (17, 16, 'autor'), (18, 17, 'autor'), (18, 18, 'współautor'), (19, 18, 'autor'), (20, 19, 'autor'), (21, 5, 'autor'), (22, 20, 'autor'), (22, 22, 'współautor'), (23, 21, 'autor'), (23, 22, 'współautor'); INSERT INTO `pracownicy` (`id`, `imie`, `nazwisko`, `stanowisko`, `pensja`, `data_zatrudnienia`, `email`) VALUES (1, 'Barbara', 'Zawadzka', 'kierownik biblioteki', 6200.0, '2014-09-01', 'b.zawadzka@example.com'), (2, 'Tomasz', 'Mazur', 'bibliotekarz', 4800.0, '2018-02-01', 't.mazur@example.com'), (3, 'Agnieszka', 'Krawiec', 'bibliotekarz', 4700.0, '2019-09-16', 'a.krawiec@example.com'), (4, 'Paweł', 'Sikora', 'asystent', 3900.0, '2022-09-01', 'p.sikora@example.com'), (5, 'Monika', 'Baran', 'bibliotekarz', 4900.0, '2020-01-07', 'm.baran@example.com'); INSERT INTO `wypozyczenia` (`id`, `uczen_id`, `ksiazka_id`, `pracownik_id`, `data_wypozyczenia`, `termin_zwrotu`, `data_zwrotu`, `kara`, `status`) VALUES (1, 1, 1, 1, '2026-09-02', '2026-09-16', '2026-09-15', 0.0, 'zwrocone'), (2, 2, 4, 2, '2026-09-04', '2026-09-18', '2026-09-16', 0.0, 'zwrocone'), (3, 3, 7, 3, '2026-09-06', '2026-09-20', '2026-09-17', 0.0, 'zwrocone'), (4, 4, 10, 4, '2026-09-08', '2026-09-22', '2026-09-21', 0.0, 'zwrocone'), (5, 5, 13, 5, '2026-09-10', '2026-09-24', '2026-09-22', 0.0, 'zwrocone'), (6, 6, 16, 1, '2026-09-12', '2026-09-26', '2026-09-23', 0.0, 'zwrocone'), (7, 7, 19, 2, '2026-09-14', '2026-09-28', '2026-09-27', 0.0, 'zwrocone'), (8, 8, 22, 3, '2026-09-16', '2026-09-30', '2026-09-28', 0.0, 'zwrocone'), (9, 9, 1, 4, '2026-09-18', '2026-10-02', '2026-09-29', 0.0, 'zwrocone'), (10, 10, 4, 5, '2026-09-20', '2026-10-04', '2026-10-03', 0.0, 'zwrocone'), (11, 11, 7, 1, '2026-09-22', '2026-10-06', '2026-10-04', 0.0, 'zwrocone'), (12, 12, 10, 2, '2026-09-24', '2026-10-08', '2026-10-05', 0.0, 'zwrocone'), (13, 13, 13, 3, '2026-09-26', '2026-10-10', '2026-10-09', 0.0, 'zwrocone'), (14, 14, 16, 4, '2026-09-28', '2026-10-12', '2026-10-10', 0.0, 'zwrocone'), (15, 15, 19, 5, '2026-09-30', '2026-10-14', '2026-10-11', 0.0, 'zwrocone'), (16, 3, 4, 1, '2026-09-05', '2026-09-19', '2026-09-21', 5.0, 'zwrocone'), (17, 8, 11, 2, '2026-09-07', '2026-09-21', '2026-09-24', 5.0, 'zwrocone'), (18, 13, 18, 3, '2026-09-09', '2026-09-23', '2026-09-27', 5.0, 'zwrocone'), (19, 18, 1, 4, '2026-09-11', '2026-09-25', '2026-09-30', 5.0, 'zwrocone'), (20, 23, 8, 5, '2026-09-13', '2026-09-27', '2026-10-03', 5.0, 'zwrocone'), (21, 4, 15, 1, '2026-09-15', '2026-09-29', '2026-10-06', 5.0, 'zwrocone'), (22, 9, 22, 2, '2026-09-17', '2026-10-01', '2026-10-09', 12.5, 'zwrocone'), (23, 14, 5, 3, '2026-09-19', '2026-10-03', '2026-10-05', 5.0, 'zwrocone'), (24, 19, 12, 4, '2026-09-21', '2026-10-05', '2026-10-08', 5.0, 'zwrocone'), (25, 24, 19, 5, '2026-09-23', '2026-10-07', '2026-10-11', 5.0, 'zwrocone'), (26, 2, 3, 1, '2026-10-22', '2026-11-05', NULL, 0.0, 'w trakcie'), (27, 6, 9, 2, '2026-10-23', '2026-11-06', NULL, 0.0, 'w trakcie'), (28, 10, 15, 3, '2026-10-24', '2026-11-07', NULL, 0.0, 'w trakcie'), (29, 14, 21, 4, '2026-10-25', '2026-11-08', NULL, 0.0, 'w trakcie'), (30, 18, 3, 5, '2026-10-26', '2026-11-09', NULL, 0.0, 'w trakcie'), (31, 22, 9, 1, '2026-10-27', '2026-11-10', NULL, 0.0, 'w trakcie'), (32, 2, 15, 2, '2026-10-28', '2026-11-11', NULL, 0.0, 'w trakcie'), (33, 6, 21, 3, '2026-10-29', '2026-11-12', NULL, 0.0, 'w trakcie'), (34, 10, 3, 4, '2026-10-30', '2026-11-13', NULL, 0.0, 'w trakcie'), (35, 14, 9, 5, '2026-10-22', '2026-11-05', NULL, 0.0, 'w trakcie'), (36, 5, 2, 1, '2026-09-01', '2026-09-15', NULL, 0.0, 'przeterminowane'), (37, 8, 7, 2, '2026-09-02', '2026-09-16', NULL, 0.0, 'przeterminowane'), (38, 11, 12, 3, '2026-09-03', '2026-09-17', NULL, 0.0, 'przeterminowane'), (39, 14, 17, 4, '2026-09-04', '2026-09-18', NULL, 0.0, 'przeterminowane'), (40, 17, 22, 5, '2026-09-05', '2026-09-19', NULL, 0.0, 'przeterminowane'), (41, 20, 3, 1, '2026-09-06', '2026-09-20', NULL, 0.0, 'przeterminowane'), (42, 23, 8, 2, '2026-09-07', '2026-09-21', NULL, 0.0, 'przeterminowane'), (43, 2, 13, 3, '2026-09-08', '2026-09-22', NULL, 0.0, 'przeterminowane'), (44, 5, 18, 4, '2026-09-09', '2026-09-23', NULL, 0.0, 'przeterminowane'), (45, 8, 23, 5, '2026-09-10', '2026-09-24', NULL, 0.0, 'przeterminowane'); INSERT INTO `rezerwacje` (`id`, `uczen_id`, `ksiazka_id`, `data_rezerwacji`, `status`, `uwagi`) VALUES (1, 4, 3, '2026-09-12', 'aktywna', 'Rezerwacja telefoniczna'), (2, 9, 10, '2026-09-14', 'anulowana', NULL), (3, 14, 17, '2026-09-16', 'zrealizowana', NULL), (4, 19, 24, '2026-09-18', 'aktywna', NULL), (5, 24, 7, '2026-09-20', 'anulowana', 'Rezerwacja telefoniczna'), (6, 5, 14, '2026-09-22', 'zrealizowana', 'Prośba o powiadomienie e-mail'), (7, 10, 21, '2026-09-24', 'aktywna', NULL), (8, 15, 4, '2026-09-26', 'anulowana', NULL), (9, 20, 11, '2026-09-28', 'zrealizowana', 'Rezerwacja telefoniczna'), (10, 1, 18, '2026-09-30', 'aktywna', NULL), (11, 6, 1, '2026-10-02', 'anulowana', 'Prośba o powiadomienie e-mail'), (12, 11, 8, '2026-10-04', 'zrealizowana', NULL), (13, 16, 15, '2026-10-06', 'aktywna', 'Rezerwacja telefoniczna'), (14, 21, 22, '2026-10-08', 'anulowana', NULL), (15, 2, 5, '2026-10-10', 'zrealizowana', NULL), (16, 7, 12, '2026-10-12', 'aktywna', 'Prośba o powiadomienie e-mail'), (17, 12, 19, '2026-10-14', 'anulowana', 'Rezerwacja telefoniczna'), (18, 17, 2, '2026-10-16', 'zrealizowana', NULL); INSERT INTO `opinie` (`id`, `uczen_id`, `ksiazka_id`, `ocena`, `komentarz`, `data_dodania`) VALUES (1, 1, 1, 1, 'Trudno było przebrnąć przez całość.', '2026-09-20'), (2, 2, 6, 2, 'Trudno było przebrnąć przez całość.', '2026-09-21'), (3, 3, 11, 3, NULL, '2026-09-22'), (4, 4, 16, 4, 'Książka warta polecenia.', '2026-09-23'), (5, 5, 21, 5, 'Książka warta polecenia.', '2026-09-24'), (6, 6, 2, 1, 'Trudno było przebrnąć przez całość.', '2026-09-25'), (7, 7, 7, 2, 'Trudno było przebrnąć przez całość.', '2026-09-26'), (8, 8, 12, 3, NULL, '2026-09-27'), (9, 9, 17, 4, 'Książka warta polecenia.', '2026-09-28'), (10, 10, 22, 5, 'Książka warta polecenia.', '2026-09-29'), (11, 11, 3, 1, 'Trudno było przebrnąć przez całość.', '2026-09-30'), (12, 12, 8, 2, 'Trudno było przebrnąć przez całość.', '2026-10-01'), (13, 13, 13, 3, NULL, '2026-10-02'), (14, 14, 18, 4, 'Książka warta polecenia.', '2026-10-03'), (15, 15, 23, 5, 'Książka warta polecenia.', '2026-10-04'), (16, 16, 4, 1, 'Trudno było przebrnąć przez całość.', '2026-10-05'), (17, 17, 9, 2, 'Trudno było przebrnąć przez całość.', '2026-10-06'), (18, 18, 14, 3, NULL, '2026-10-07'), (19, 19, 19, 4, 'Książka warta polecenia.', '2026-10-08'), (20, 20, 24, 5, 'Książka warta polecenia.', '2026-10-09'), (21, 21, 5, 1, 'Trudno było przebrnąć przez całość.', '2026-10-10'), (22, 22, 10, 2, 'Trudno było przebrnąć przez całość.', '2026-10-11'), (23, 23, 15, 3, NULL, '2026-10-12'), (24, 24, 20, 4, 'Książka warta polecenia.', '2026-10-13'), (25, 1, 8, 5, 'Książka warta polecenia.', '2026-10-14'), (26, 2, 13, 1, 'Trudno było przebrnąć przez całość.', '2026-10-15'), (27, 3, 18, 2, 'Trudno było przebrnąć przez całość.', '2026-10-16'), (28, 4, 23, 3, NULL, '2026-10-17'), (29, 5, 4, 4, 'Książka warta polecenia.', '2026-10-18'), (30, 6, 9, 5, 'Książka warta polecenia.', '2026-10-19'); -- Widoki nie są częścią danych startowych: tworzymy je w module o widokach.