From e41a24aa2c8ec445ee947d57864633ec040fa377 Mon Sep 17 00:00:00 2001 From: Yana Pechenenko Date: Tue, 2 Jun 2026 19:01:57 +0200 Subject: [PATCH 1/4] finish task-1 --- task-1/schema.sql | 126 ++++++++++++++++++- task-1/seed.sql | 308 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 433 insertions(+), 1 deletion(-) create mode 100644 task-1/seed.sql diff --git a/task-1/schema.sql b/task-1/schema.sql index a3b443b..6308184 100644 --- a/task-1/schema.sql +++ b/task-1/schema.sql @@ -1 +1,125 @@ --- Write here your DDL statements to create the tables for the database. \ No newline at end of file +-- Write here your DDL statements to create the tables for the database. + + + + +- +CREATE TABLE cards +( + card_id SERIAL PRIMARY KEY, + card_number TEXT UNIQUE NOT NULL, + card_issued_on DATE NOT NULL, + card_expires_on DATE NOT NULL, + CHECK (card_expires_on > card_issued_on) +); + + +CREATE TABLE members +( + member_id SERIAL PRIMARY KEY, + card_id INTEGER UNIQUE, + member_email TEXT UNIQUE NOT NULL, + member_name TEXT NOT NULL, + member_phone TEXT NOT NULL, + member_address TEXT NOT NULL, + CONSTRAINT fk_card_id + FOREIGN KEY (card_id) + REFERENCES cards (card_id) ON DELETE CASCADE +); + + +CREATE TABLE publishers +( + publisher_id SERIAL PRIMARY KEY, + publisher_name TEXT UNIQUE NOT NULL +); + + +CREATE TABLE authors +( + author_id SERIAL PRIMARY KEY, + author_name TEXT NOT NULL +); + + +CREATE TABLE tags +( + tag_id SERIAL PRIMARY KEY, + tag_name VARCHAR(25) UNIQUE NOT NULL +); + + +CREATE TABLE books +( + book_id SERIAL PRIMARY KEY, + book_isbn VARCHAR(13) UNIQUE NOT NULL, + book_title TEXT NOT NULL, + publisher_id INTEGER NOT NULL, + CONSTRAINT fk_publisher_id + FOREIGN KEY(publisher_id) + REFERENCES publishers (publisher_id) +); + + +CREATE TABLE book_authors +( + book_id INTEGER NOT NULL, + author_id INTEGER NOT NULL, + PRIMARY KEY (book_id, author_id), + FOREIGN KEY(book_id) REFERENCES books (book_id) ON DELETE CASCADE, + FOREIGN KEY(author_id) REFERENCES authors(author_id) ON DELETE CASCADE + +); + +CREATE TABLE book_tags +( + book_id INTEGER NOT NULL, + tag_id INTEGER NOT NULL, + PRIMARY KEY (book_id, tag_id), + FOREIGN KEY(book_id) REFERENCES books(book_id) ON DELETE CASCADE, + FOREIGN KEY(tag_id) REFERENCES tags(tag_id) ON DELETE CASCADE +); + + +CREATE TABLE shelves +( + shelf_id SERIAL PRIMARY KEY, + shelf_code TEXT UNIQUE NOT NULL +); + + +CREATE TABLE copies +( + copy_id SERIAL PRIMARY KEY, + copy_barcode TEXT UNIQUE NOT NULL, + book_id INTEGER NOT NULL, + shelf_id INTEGER, + CONSTRAINT fk_book_id + FOREIGN KEY (book_id) + REFERENCES books(book_id) ON DELETE CASCADE, + CONSTRAINT fk_shelf_id + FOREIGN KEY (shelf_id) + REFERENCES shelves(shelf_id) +); + +CREATE TABLE borrows +( + borrow_id SERIAL PRIMARY KEY, + member_id INTEGER NOT NULL, + copy_id INTEGER NOT NULL, + borrowed_at TIMESTAMP NOT NULL, + due_date TIMESTAMP NOT NULL, + returned_at TIMESTAMP, + fine_eur NUMERIC(8,2) NOT NULL DEFAULT 0.00, + + CHECK (due_date >= borrowed_at ), + CHECK (returned_at IS NULL OR returned_at >= borrowed_at), + CHECK (fine_eur >= 0.00), + CONSTRAINT fk_member_id + FOREIGN KEY (member_id) + REFERENCES members(member_id), + CONSTRAINT fk_copy_id + FOREIGN KEY (copy_id) + REFERENCES copies(copy_id) +); + diff --git a/task-1/seed.sql b/task-1/seed.sql new file mode 100644 index 0000000..7373776 --- /dev/null +++ b/task-1/seed.sql @@ -0,0 +1,308 @@ + +INSERT INTO cards(card_id, card_number, card_issued_on, card_expires_on) VALUES + (1001, 'C-1001', '2024-01-10', '2027-01-10'), +(1002, 'C-1002', '2024-02-15', '2027-02-15'), +(1003, 'C-1003', '2024-03-01', '2027-03-01'), +(1004, 'C-1004', '2023-11-20', '2026-11-20'), +(1005, 'C-1005', '2024-04-05', '2027-04-05'), +(1006, 'C-1006', '2023-09-12', '2026-09-12'), +(1007, 'C-1007', '2024-05-22', '2027-05-22'), +(1008, 'C-1008', '2024-01-30', '2027-01-30'), +(1009, 'C-1009', '2023-12-08', '2026-12-08'), +(1010, 'C-1010', '2024-06-01', '2027-06-01'); + +INSERT INTO members ( member_id, card_id, member_email, member_name, member_phone, member_address) VALUES + (1, 1001, 'sam@example.com', 'Sam', 31612345678, 'Oudegracht 10, Utrecht'), + (2, 1002, 'alex@example.com', 'Alex', 31623456789, 'Lange Viestraat 5, Utrecht'), + (3, 1003, 'priya@example.com', 'Priya', 31634567890, 'Maliebaan 22, Utrecht'), + (4, 1004, 'tom@example.com', 'Tom', 31645678901, 'Biltstraat 88, Utrecht'), + (5, 1005, 'lena@example.com', 'Lena', 31656789012, 'Voorstraat 3, Utrecht'), + (6, 1006, 'james@example.com', 'James', 31667890123, 'Catharijnesingel 14, Utrecht'), + (7, 1007, 'nina@example.com', 'Nina', 31678901234, 'Nobelstraat 7, Utrecht'), + (8, 1008, 'omar@example.com', 'Omar', 31689012345, 'Rijnkade 19, Utrecht'), + (9, 1009, 'yuki@example.com', 'Yuki', 31690123456, 'Springweg 2, Utrecht'), + (10, 1010, 'chen@example.com', 'Chen', 31601234567, 'Wittevrouwenstraat 31, Utrecht'); + +INSERT INTO publishers (publisher_id, publisher_name) VALUES + (1, 'Addison-Wesley'), + (2, 'Manning'), + (3, 'O`Reilly'), + (4, 'Prentice Hall'); + +INSERT INTO authors (author_id, author_name) VALUES +(1, 'Andrew Hunt'), +(2, 'Bert Bates'), +(3, 'Craig Walls'), +(4, 'David Farley'), +(5, 'David Thomas'), +(6, 'Douglas Crockford'), +(7, 'Elisabeth Robson'), +(8, 'Eric Evans'), +(9, 'Eric Freeman'), +(10, 'Erich Gamma'), +(11, 'Jez Humble'), +(12, 'John Vlissides'), +(13, 'Joshua Bloch'), +(14, 'Kathy Sierra'), +(15, 'Mark Lutz'), +(16, 'Martin Fowler'), +(17, 'Martin Kleppmann'), +(18, 'Ralph Johnson'), +(19, 'Richard Helm'), +(20, 'Robert C. Martin'); + +INSERT INTO tags(tag_id, tag_name) VALUES +(1, 'architecture'), +(2, 'beginners'), +(3, 'best-practices'), +(4, 'career'), +(5, 'databases'), +(6, 'design-patterns'), +(7, 'devops'), +(8, 'distributed-systems'), +(9, 'frameworks'), +(10, 'java'), +(11, 'javascript'), +(12, 'oop'), +(13, 'python'), +(14, 'software-design'), +(15, 'spring'); + +INSERT INTO books (book_id, book_isbn, book_title, publisher_id) VALUES +(1, 9780134494166, 'Clean Architecture', 4), +(2, 9780132350884, 'Clean Code', 4), +(3, 9780321774620, 'Continuous Delivery', 1), +(4, 9780201633610, 'Design Patterns', 1), +(5, 9781492056300, 'Designing Data-Intensive Applications', 3), +(6, 9780321125217, 'Domain-Driven Design', 1), +(7, 9780134685991, 'Effective Java', 1), +(8, 9780596007126, 'Head First Design Patterns', 3), +(9, 9780596009205, 'Head First Java', 3), +(10, 9780596517748, 'JavaScript: The Good Parts', 3), +(11, 9781491950357, 'Learning Python', 3), +(12, 9780201485677, 'Refactoring', 1), +(13, 9781617294945, 'Spring in Action', 2), +(14, 9780132181815, 'The Clean Coder', 4), +(15, 9780137081073, 'The Pragmatic Programmer', 1); + +INSERT INTO book_authors (book_id, author_id) VALUES +(1, 20), +(2, 20), +(3, 11), +(3, 4), +(4, 10), +(4, 19), +(4, 18), +(4, 12), +(5, 17), +(6, 8), +(7, 13), +(8, 9), +(8, 7), +(9, 14), +(9, 2), +(10, 6), +(11, 15), +(12, 16), +(13, 3), +(14, 20), +(15, 5), +(15, 1); + + +INSERT INTO book_tags (book_id, tag_id) VALUES +(1, 1), +(1, 3), +(2, 3), +(2, 14), +(3, 7), +(3, 3), +(4, 6), +(4, 12), +(5, 5), +(5, 1), +(5, 8), +(6, 14), +(6, 1), +(7, 10), +(7, 3), +(8, 6), +(8, 10), +(9, 10), +(9, 2), +(10, 11), +(10, 2), +(11, 13), +(11, 2), +(12, 3), +(12, 10), +(13, 10), +(13, 15), +(13, 9), +(14, 3), +(14, 4), +(15, 3), +(15, 4); + +INSERT INTO shelves (shelf_id, shelf_code) VALUES + (1, 'A-02'), + (2, 'B-01'), + (3, 'B-02'), + (4, 'B-03'), + (5, 'C-01'), + (6, 'D-01'); + +INSERT INTO copies (copy_id, copy_barcode, book_id, shelf_id) VALUES +(1, 'BC-0001',7, 3), +(2, 'BC-0002',7, 3), +(3, 'BC-0003',9, 1), +(4, 'BC-0004',9, 1), +(5, 'BC-0005',2, 5), +(6, 'BC-0006',2, 5), +(7, 'BC-0007',4, 2), +(8, 'BC-0008', 4, 2), +(9, 'BC-0009',4, 2), +(10, 'BC-0010',4, 2), +(11, 'BC-0011',10, 4), +(12, 'BC-0012',10, 4), +(13, 'BC-0013',10, 4), +(14, 'BC-0014',11, 5), +(15, 'BC-0015',11, 5), +(16, 'BC-0016',11, 5), +(17, 'BC-0017',11, 5), +(18, 'BC-0018',15, 5), +(19, 'BC-0019',15, 5), +(20, 'BC-0020',6, 6), +(21, 'BC-0021',6, 6), +(22, 'BC-0022',6, 6), +(23, 'BC-0023',8, 1), +(24, 'BC-0024',8, 1), +(25, 'BC-0025',13, 6), +(26, 'BC-0026',13, 6), +(27, 'BC-0027',13, 6), +(28, 'BC-0028', 14, 6), +(29, 'BC-0029',14, 6), +(30, 'BC-0030',1, 5), +(31, 'BC-0031', 1, 5), +(32, 'BC-0032',1, 5), +(33, 'BC-0033',1, 5), +(34, 'BC-0034',5, 1), +(35, 'BC-0035',5, 1), +(36, 'BC-0036',3, 6), +(37, 'BC-0037',3, 6), +(38, 'BC-0038',3, 6), +(39, 'BC-0039',3, 6), +(40, 'BC-0040',12, 2), +(41, 'BC-0041',12, 2); + +INSERT INTO borrows (borrow_id, member_id, copy_id, borrowed_at, due_date, returned_at, fine_eur) VALUES +(1, 8, 15, '2025-11-26 16:42', '2025-12-17 16:42', '2025-12-01 16:42', 0.00), +(2, 7, 5, '2025-11-29 17:06', '2025-12-20 17:06', '2025-12-13 17:06', 0.00), +(3, 5, 34, '2025-11-29 23:07', '2025-12-20 23:07', '2025-12-22 23:07', 0.50), +(4, 8, 11, '2025-12-02 08:08', '2025-12-23 08:08', '2025-12-13 08:08', 0.00), +(5, 7, 19, '2025-12-02 14:01', '2025-12-23 14:01', NULL, 37.75), +(6, 6, 33, '2025-12-02 15:36', '2025-12-23 15:36', '2025-12-16 15:36', 0.00), +(7, 10, 29, '2025-12-04 15:24', '2025-12-25 15:24', '2025-12-26 15:24', 0.25), +(8, 2, 32, '2025-12-05 12:37', '2025-12-26 12:37', '2025-12-24 12:37', 0.00), +(9, 2, 15, '2025-12-06 22:01', '2025-12-27 22:01', '2025-12-18 22:01', 0.00), +(10, 4, 25, '2025-12-08 13:07', '2025-12-29 13:07', '2025-12-18 13:07', 0.00), +(11, 10, 40, '2025-12-08 23:42', '2025-12-29 23:42', NULL, 36.00), +(12, 3, 17, '2025-12-11 06:06', '2026-01-01 06:06', '2026-01-06 06:06', 1.25), +(13, 3, 21, '2025-12-12 12:14', '2026-01-02 12:14', '2025-12-28 12:14', 0.00), +(14, 5, 28, '2025-12-14 19:38', '2026-01-04 19:38', '2025-12-17 19:38', 0.00), +(15, 1, 36, '2025-12-15 01:01', '2026-01-05 01:01', '2026-01-04 01:01', 0.00), +(16, 10, 22, '2025-12-16 16:13', '2026-01-06 16:13', '2025-12-26 16:13', 0.00), +(17, 9, 13, '2025-12-20 21:10', '2026-01-10 21:10', '2025-12-24 21:10', 0.00), +(18, 1, 24, '2025-12-21 23:02', '2026-01-11 23:02', '2026-01-14 23:02', 0.75), +(19, 6, 14, '2025-12-22 00:00', '2026-01-12 00:00', '2026-01-15 00:00', 0.75), +(20, 3, 29, '2025-12-26 20:28', '2026-01-16 20:28', '2026-01-08 20:28', 0.00), +(21, 2, 38, '2025-12-28 09:32', '2026-01-18 09:32', '2026-01-05 09:32', 0.00), +(22, 9, 7, '2025-12-30 21:57', '2026-01-20 21:57', '2026-01-07 21:57', 0.00), +(23, 3, 5, '2026-01-04 04:52', '2026-01-25 04:52', '2026-01-23 04:52', 0.00), +(24, 3, 23, '2026-01-04 07:08', '2026-01-25 07:08', '2026-01-26 07:08', 0.25), +(25, 3, 41, '2026-01-06 04:53', '2026-01-27 04:53', '2026-01-26 04:53', 0.00), +(26, 9, 2, '2026-01-08 20:51', '2026-01-29 20:51', '2026-02-05 20:51', 1.75), +(27, 4, 13, '2026-01-10 08:51', '2026-01-31 08:51', '2026-01-25 08:51', 0.00), +(28, 1, 26, '2026-01-10 13:15', '2026-01-31 13:15', NULL, 28.00), +(29, 10, 15, '2026-01-10 16:55', '2026-01-31 16:55', '2026-01-29 16:55', 0.00), +(30, 6, 37, '2026-01-12 18:47', '2026-02-02 18:47', '2026-01-25 18:47', 0.00), +(31, 2, 7, '2026-01-12 23:14', '2026-02-02 23:14', '2026-02-10 23:14', 2.00), +(32, 7, 10, '2026-01-14 09:15', '2026-02-04 09:15', NULL, 27.00), +(33, 3, 25, '2026-01-15 13:38', '2026-02-05 13:38', '2026-01-18 13:38', 0.00), +(34, 3, 38, '2026-01-26 22:43', '2026-02-16 22:43', '2026-02-19 22:43', 0.75), +(35, 7, 9, '2026-01-28 05:02', '2026-02-18 05:02', '2026-02-07 05:02', 0.00), +(36, 5, 36, '2026-01-30 12:56', '2026-02-20 12:56', '2026-02-07 12:56', 0.00), +(37, 4, 16, '2026-02-01 04:12', '2026-02-22 04:12', '2026-03-01 04:12', 1.75), +(38, 10, 25, '2026-02-09 13:01', '2026-03-02 13:01', '2026-02-22 13:01', 0.00), +(39, 7, 8, '2026-02-10 21:05', '2026-03-03 21:05', '2026-02-14 21:05', 0.00), +(40, 8, 29, '2026-02-11 15:54', '2026-03-04 15:54', '2026-02-19 15:54', 0.00), +(41, 8, 36, '2026-02-15 11:43', '2026-03-08 11:43', '2026-03-02 11:43', 0.00), +(42, 10, 28, '2026-02-16 01:36', '2026-03-09 01:36', '2026-03-06 01:36', 0.00), +(43, 3, 39, '2026-02-16 14:32', '2026-03-09 14:32', '2026-02-24 14:32', 0.00), +(44, 9, 3, '2026-02-18 18:15', '2026-03-11 18:15', '2026-02-23 18:15', 0.00), +(45, 8, 35, '2026-02-22 13:03', '2026-03-15 13:03', '2026-02-28 13:03', 0.00), +(46, 4, 18, '2026-02-23 11:30', '2026-03-16 11:30', '2026-03-05 11:30', 0.00), +(47, 3, 30, '2026-02-28 05:49', '2026-03-21 05:49', NULL, 15.75), +(48, 4, 5, '2026-03-02 13:05', '2026-03-23 13:05', '2026-03-10 13:05', 0.00), +(49, 8, 13, '2026-03-02 15:28', '2026-03-23 15:28', '2026-03-18 15:28', 0.00), +(50, 9, 27, '2026-03-02 23:32', '2026-03-23 23:32', '2026-03-07 23:32', 0.00), +(51, 6, 1, '2026-03-09 18:37', '2026-03-30 18:37', '2026-03-26 18:37', 0.00), +(52, 10, 37, '2026-03-11 01:13', '2026-04-01 01:13', '2026-03-27 01:13', 0.00), +(53, 8, 41, '2026-03-11 18:49', '2026-04-01 18:49', '2026-04-05 18:49', 1.00), +(54, 7, 8, '2026-03-13 18:20', '2026-04-03 18:20', '2026-04-02 18:20', 0.00), +(55, 8, 15, '2026-03-14 20:16', '2026-04-04 20:16', '2026-04-06 20:16', 0.50), +(56, 7, 12, '2026-03-15 23:11', '2026-04-05 23:11', '2026-04-11 23:11', 1.50), +(57, 8, 29, '2026-03-16 11:54', '2026-04-06 11:54', '2026-04-15 11:54', 2.25), +(58, 8, 11, '2026-03-17 02:55', '2026-04-07 02:55', '2026-03-27 02:55', 0.00), +(59, 8, 20, '2026-03-17 03:57', '2026-04-07 03:57', '2026-04-02 03:57', 0.00), +(60, 2, 9, '2026-03-17 17:29', '2026-04-07 17:29', '2026-03-23 17:29', 0.00), +(61, 2, 6, '2026-03-20 04:12', '2026-04-10 04:12', '2026-04-19 04:12', 2.25), +(62, 6, 16, '2026-03-21 05:22', '2026-04-11 05:22', '2026-04-02 05:22', 0.00), +(63, 1, 5, '2026-03-22 05:23', '2026-04-12 05:23', '2026-04-04 05:23', 0.00), +(64, 3, 33, '2026-03-23 13:30', '2026-04-13 13:30', '2026-03-29 13:30', 0.00), +(65, 7, 34, '2026-03-24 17:05', '2026-04-14 17:05', '2026-04-04 17:05', 0.00), +(66, 10, 31, '2026-03-27 14:04', '2026-04-17 14:04', NULL, 9.00), +(67, 2, 4, '2026-03-30 21:11', '2026-04-20 21:11', '2026-04-08 21:11', 0.00), +(68, 3, 21, '2026-03-31 18:59', '2026-04-21 18:59', '2026-04-29 18:59', 2.00), +(69, 7, 24, '2026-03-31 21:47', '2026-04-21 21:47', '2026-04-12 21:47', 0.00), +(70, 9, 14, '2026-04-01 10:42', '2026-04-22 10:42', '2026-04-05 10:42', 0.00), +(71, 5, 8, '2026-04-03 11:47', '2026-04-24 11:47', '2026-04-13 11:47', 0.00), +(72, 6, 25, '2026-04-03 12:56', '2026-04-24 12:56', '2026-04-09 12:56', 0.00), +(73, 8, 16, '2026-04-05 10:05', '2026-04-26 10:05', NULL, 6.75), +(74, 7, 20, '2026-04-07 04:41', '2026-04-28 04:41', '2026-04-11 04:41', 0.00), +(75, 8, 1, '2026-04-09 15:44', '2026-04-30 15:44', '2026-04-23 15:44', 0.00), +(76, 6, 35, '2026-04-10 15:31', '2026-05-01 15:31', '2026-05-10 15:31', 2.25), +(77, 1, 18, '2026-04-10 22:51', '2026-05-01 22:51', '2026-04-18 22:51', 0.00), +(78, 6, 41, '2026-04-12 19:39', '2026-05-03 19:39', '2026-04-18 19:39', 0.00), +(79, 3, 36, '2026-04-14 05:24', '2026-05-05 05:24', '2026-04-24 05:24', 0.00), +(80, 8, 12, '2026-04-18 09:31', '2026-05-09 09:31', '2026-04-28 09:31', 0.00), +(81, 3, 15, '2026-04-20 05:39', '2026-05-11 05:39', '2026-05-04 05:39', 0.00), +(82, 8, 27, '2026-04-21 18:58', '2026-05-12 18:58', '2026-05-02 18:58', 0.00), +(83, 5, 29, '2026-04-22 04:05', '2026-05-13 04:05', '2026-05-08 04:05', 0.00), +(84, 5, 24, '2026-04-22 16:21', '2026-05-13 16:21', '2026-05-02 16:21', 0.00), +(85, 1, 7, '2026-04-26 09:59', '2026-05-17 09:59', '2026-05-07 09:59', 0.00), +(86, 3, 33, '2026-04-28 13:17', '2026-05-19 13:17', '2026-05-10 13:17', 0.00), +(87, 10, 12, '2026-04-30 17:43', '2026-05-21 17:43', '2026-05-04 17:43', 0.00), +(88, 2, 11, '2026-05-02 02:49', '2026-05-23 02:49', NULL, 0.00), +(89, 2, 28, '2026-05-04 10:28', '2026-05-25 10:28', NULL, 0.00), +(90, 1, 6, '2026-05-04 18:49', '2026-05-25 18:49', '2026-05-23 18:49', 0.00), +(91, 6, 37, '2026-05-08 01:26', '2026-05-29 01:26', '2026-05-27 01:26', 0.00), +(92, 2, 20, '2026-05-08 22:34', '2026-05-29 22:34', NULL, 0.00), +(93, 5, 32, '2026-05-12 04:26', '2026-06-02 04:26', NULL, 0.00), +(94, 4, 23, '2026-05-15 01:20', '2026-06-05 01:20', '2026-06-11 01:20', 1.50), +(95, 4, 41, '2026-05-16 06:07', '2026-06-06 06:07', NULL, 0.00), +(96, 1, 39, '2026-05-16 06:51', '2026-06-06 06:51', NULL, 0.00), +(97, 9, 29, '2026-05-17 21:26', '2026-06-07 21:26', '2026-06-12 21:26', 1.25), +(98, 9, 3, '2026-05-18 04:02', '2026-06-08 04:02', NULL, 0.00), +(99, 1, 17, '2026-05-19 18:25', '2026-06-09 18:25', '2026-05-29 18:25', 0.00), +(100, 3, 9, '2026-05-19 23:46', '2026-06-09 23:46', '2026-06-05 23:46', 0.00); + +SELECT setval('cards_card_id_seq', 1010); +SELECT setval('members_member_id_seq', 10); +SELECT setval('publishers_publisher_id_seq', 4); +SELECT setval('authors_author_id_seq', 20); +SELECT setval('tags_tag_id_seq', 15); +SELECT setval('books_book_id_seq', 15); +SELECT setval('shelves_shelf_id_seq', 6); +SELECT setval('copies_copy_id_seq', 41); +SELECT setval('borrows_borrow_id_seq', 100); From a3a79a60b57b64015939bb9255850b59998ce493 Mon Sep 17 00:00:00 2001 From: Yana Pechenenko Date: Wed, 3 Jun 2026 13:21:27 +0200 Subject: [PATCH 2/4] add docker compose , diagram by DBeaver and read.me for task-1 --- task-1/README.MD | 85 ++++++++++++++++++++++++++++ task-1/docker-compose.yml | 18 ++++++ task-1/library_er_diagram.png | Bin 0 -> 152403 bytes task-1/library_loans.csv | 101 ---------------------------------- 4 files changed, 103 insertions(+), 101 deletions(-) create mode 100644 task-1/README.MD create mode 100644 task-1/docker-compose.yml create mode 100644 task-1/library_er_diagram.png delete mode 100644 task-1/library_loans.csv diff --git a/task-1/README.MD b/task-1/README.MD new file mode 100644 index 0000000..1c1d80f --- /dev/null +++ b/task-1/README.MD @@ -0,0 +1,85 @@ +📘 Task 1 — Library Database (3NF Normalization) +This folder contains all files required to set up and run the database for Task 1, including the schema, seed data, ER diagram, and Docker Compose configuration. + +📌 1. ER Diagram +The ER diagram is included in the repository: library_er_diagram.png +It shows all tables and relationships in the normalized database. + +📌 2. Running PostgreSQL (Docker) +A docker-compose.yml file is included to start PostgreSQL quickly. +Start the database: + +```bash +docker compose up -d +``` + +Check that the container is running: + +```bash +docker ps +``` + +Connection details: +- Host: localhost +- Port: 5432 +- Database: library +- User: postgres +- Password: postgres + +📌 3. Apply the Schema +Run the schema file to create all tables and constraints: + +```bash +psql -h localhost -p 5432 -U postgres -d library -f schema.sql +``` + +📌 4. Insert Seed Data +Load the initial dataset: + +```bash +psql -h localhost -p 5432 -U postgres -d library -f seed.sql +``` + +This inserts: +- members +- cards +- publishers +- authors +- tags +- books +- shelves +- copies +- borrows +Sequences are synchronized using setval. + +📌 5. Tables Included +- members +- cards +- publishers +- authors +- tags +- books +- shelves +- copies +- borrows +- book_authors (N:M) +- book_tags (N:M) + +📌 6. Relationship Types +1:1 — members ↔ cards +1:N — publishers → books +1:N — books → copies +1:N — members → borrows +N:M — books ↔ authors +N:M — books ↔ tags + +📌 7. Constraints +PRIMARY KEY on every table +FOREIGN KEY relationships +UNIQUE constraints (email, ISBN, barcode, tag name, etc.) +CHECK constraints (fine ≥ 0, valid dates, etc.) + +📌 8. Notes +The schema and seed data are ready to be used in Task 2 (Java JDBC). +The ER diagram reflects the final normalized structure. +The database can be recreated at any time using the steps above. \ No newline at end of file diff --git a/task-1/docker-compose.yml b/task-1/docker-compose.yml new file mode 100644 index 0000000..8bdcb95 --- /dev/null +++ b/task-1/docker-compose.yml @@ -0,0 +1,18 @@ +version: '3.9' + +services: + postgres: + image: postgres:16 + container_name: library-db + restart: unless-stopped + environment: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: postgres + POSTGRES_DB: library + ports: + - "5432:5432" + volumes: + - postgres_data:/var/lib/postgresql/data + +volumes: + postgres_data: diff --git a/task-1/library_er_diagram.png b/task-1/library_er_diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..dd577763455c946d1c64cf4f12cfe551e00263c0 GIT binary patch literal 152403 zcmc$`2{_dI`# zV`F1GaN)e(6*jg#Q1EXz=N|BrNKtVKHg;3N3wmd-2B$8LQSev$>S2uMkv`frAM0yW zRjW=sJ1lcs>EvytM7i@xCysXSHsSkODuYL6FqY%z!yIrveu+{?)Yi93rd!0?`0ppe zhF_R|OFeRLhPxxCmSXAAKklaqD;Tg?pjYG<)k^;a#$;nt>KRDZ`r})+D2|;Ub^5b& z?R=9lw;Qta&6%E`!92m&t?WaHop0C-B}@MJCfUgT&pV|xvhV!JRsDbZMgieo(^h9v zJT^#2*v_zqzieJ6a3yMdV3DZEc8fKQj3Q_Gm+bY$LwFaqopqhDX|p}g5o%Y4>|kSK zt?yRtCjk}YMj7TOm(yUr<)W-fpAli_a)p6kyK3!RqrMx`83{I_GjwMs0yv==bWSK+ z#ya?5W1HteoT2d|*v>3~4>q>mVQY?osi*@qLr z+$>oiY#9fmILgKTPX|^r--U|erk5Hk(?Y`LzoqyXg;ACb6JU(s+SN}oDcWM{Cw`pA zv69(%5sko?9WbV*qT{>R?2Z^Tc%uI-gA;nfDE0Y4G40eBsy?=TD(t8-)Q?k*ZghNm zn}cv_a%04&c=(*XZ{WX{&4b{C{(Eh3k3A4`YhQTa)t*mJWqOj8J-W-?damFj>3NlO zf_!9R#epQ7K#M+=BgB}5}PCmeClbu*D6_P&g*85gE? zLwHE-QsqeZ-JcJ2!v$=vQflPz+p9`p8;j-ceR<{HW3>g(gYUZRR<)y-|fXgfX`|P!XXrC9xtr(TuG|tORel zUWN%{%eVJxeS>^G`AX#-aiY8!;wqQ#z9_=mJ9`(Bh2tEk0F`#p^Asx+@E%# zI1RtGr==9td`n*B%+AtJfRO0a0leJSV)%pj5|4o*XzyWIWH=Yeewt&`Np@(exxX)K_nca;-!!j2(dPtF`o}4VF3`UzcslID4mit|teTd6qGr zsT&g)F?HlqO9O+tfQo4D%+y6uR-*`DEJOi5F^SuHxq1p6M-x)@hBgdX2Ammw@SnTy zhIe1p_*pb`Hgj^l;UIKXA3hDwxa{h;-e>MIfIZRDB8E)038O7ll`)I@gIb@-5*oJD z4{tR(_7_-OqrF!Y7#7wJS37X{RK^_4uI&eV)3xu?SPJWwN9zfmzWF-@s&|VAwWSfX z3>|vi`MFUXDSU0bnHy&9d8kE!P+^jFj=vZlfwt_>bZJk`t2hA`@zmVbqJmU0V4EV6 z`LsBISKk1hxuoFqUWx8fc;p9XmAViGx0_q6!&Wwbd@Q*DdFbtIuK-Seo>w4g+=dtN z6-G%9TYkMYs^FYC1`NTfE}a|tiRgx*q2g*% zcK!*WJSLs$Xsb^GmD*P9D5=jj)shJo6UL-d$}lydYbdAEeFGYY5Zl`` zFk_aBs@GV; zhdhOa;ePosxXh+)jLlI7of7y3`iY?ng`QQq&=O)0F=Flxw|1_DzsA?*c&Xp&fjcbl z*?oZJ#4Zq5;j~hx76=Jmva-F_k+Z%qkOR&JWQ6={$zk9DK5l10TAs;Ty_rFs5r^S( z&nAkMDMrDCk6m+Jn}`w1F0`u39x8KjnRG2|s^3hNDXPZK!NMZW{^xe*5Z~QDRK`JZ z=g4Xv@xj|DmOMZ0=L|oUNa@lS>)Q{-@~kfu<88ZKn(rMTsA&BRZF+LjlyzD?+T|CA zEAkybx9^6m_=PVHmL6h%aNjpk zjkEjKfP1zl&~qz%XFD_FPECvj5eVP~w@7vF>u1%z;pHzS8$DSoT{DqwI+)y7U84r0#_g z6H{mNcnb#-Qzc@eO0mDlCS@E%W~|!2*OoZHVVX@z zxKZZRf|eU7;X#m7f0%NS=+D<=&L1wl;j}WY9MtfTSmDvz1dr-l*;Ri7M?I&Pjwj zV*Z+p>YwM5@$rXR&Ibe}sxTfQ+me;tD9dAWjZwSifD0S4+tNP}-Ik)7 zCjbC3aVnmJm%E&Y-dsQKrQ$t`=%&neWgSN?AUB)E;=D+8YweS2ee9^$ra8`0`g~u} zTiUe6vN;f3FZARXlfGN{)UCWHH}2wod1o)TGrWixzSias+|8n*2Y;?@iT&A+e(z>3 zJwJ7<&6d^+^r))t&VAR%^G;C4zJ7td+wIzA#y?6Yv5u#>UnPXqNoP1|{>S;x*O*y;S zcG{Oa+})3k8(gGnt$vU=?&a8p4_`$1cU0Z)c->!>35 z+ZC#lHn#z;;Dm;r|0j6p>$0O1oVpw9nU8J6ltawm7~a;(^dX1Rsj)mKbh5hSNJQdN zLG}7uIr;YY?Qw`N#R8&ykaueuJjq88y@zloKFz!dU7sgUC)ow&Ar~_~P-MBG?)8{- zxn~1hP{$Sn^YJ^4*o7Z3k&=51TsEu4@cf-1;w_Po!xNeGoKb&m7f>26;?x<8iKbvUJ~0O z=d*?*(u-cU71`k4ER^OFO`eb9S(LT+^0RC?h_JabCDeeh1*ufp(Hvt;5p92K zlDq(d{O|{FG|mYHfxo{<$N_%%w2xOQ(q*{Ck>Qk}^=#=xZeZ%={5_B@OF@p(1+1k# zufFnASPON1L53=C@#ZCVY?6Q~3!9E20JzX2gPH~=!g42{W#L2Igh#=-e+aa$zuPNp_wPk1%baU3 z-frEh(@BdPG&G6y8LX`zsy{{Hv(f*$36$%%GZ>0UW0zJn;lCfV=pK<^vKl$5L3FMN7T&UdRMUB9BwBoIxQ> z7G|>V()|w)jrZz!5tcwd`5+ZnyR3GH6h^xwRk{=`s2p)tP|NL{pmIR_i_WPPX8ZC3 zgunTiZytYM!+O6JiXssn%a+xzL#I=Sc3sFWESx|C9`X_f$p}eeNAc*ZJ?*H-i6Q{h zdvQ5}I+ruFy^kVkoNmnv(L0c!!`8De3Ldg~NJ9>wUb8weQej*%3DxJl&a%fbtM(J4MP)6dA0DEYwPU$5R3nx?>j z*DnWoJ{fpbGaF5LZYV2Qbe(95=KR%BG&)f00QA$Yn5MFKYNch906rF1W8@ddz=Sl7 zD<~1)zr4M)Xmk=U4+10G84d6OD5b7~M)7#-@{ZrGt2WaOj_pM^MJ(@P1J& zY}pS4lHFATrAZa`2t=j(40!o2YK#Py%_?y}iMZe3T8p!)Z#+>X~tSV| zll5@k<>z4`Y!&uzZ)Y>((+qz&Xypd>COjHESe^jBDN&6;&m>w$va*a!t(MPt9bhw- z+a;(QFOe=VClDYly5>j^%Yq zfZPvMSeJJc$C!Df@U@^zFMfM9*Ad0?D2d=>hwtNHM{OMY2R-T9pN(q7M*QGuc@UR* z;Eh?c0YOV+IMoMYu!jG<#s4{F_+LW1`ddvWIwOzorV*3#e{tptK|E1agH<{MZ0RUYR4+^V2v;~Zy5{QX_FZH|gPjEOG1t*10 z-j`&7_@^wwv}dNd=7*eEUxFQ#SmtBMLg3C{NBh#|OaV`Lo#`@^9#sI>VWFpMzeDyKx?@~B0{gT~v=EWhw4)!fz7=t$nY z@7C$WB--iTYhgUG$sZsM56R>SmXgOO5xSKP{p4sOniJ}J?S~;k1rhOxy3 zN5|a&6if>(s_+=dwqvX&%`s@Cj;2Rw_JVkbYh=)#GIxk~hbP0fm58A5V zx*l_^tgblKrT8?Q_8O~I7DD#rT^mZ(5R{;PPSa3j!R3?zo1n3$5GdmETEr8ibGa3O z>>Jw40FrwatOiv&wH+gt z;WQRfc0Lf_G!p^#>>6z0L!yMmtt;a*fC-nbyk9z{xJnPLWy6TUAY>S0b1JSTg50IA zjPaOgie@D$*Dxp3m2cleYb&xRt_H2fz_yPqja12pRdNclNUyk3V#rKd@=yJ#r~Ta9 z=L)OF^EmY^|KSW~O_TPEJZ5-rG#he@Q>9A|E4w)hmXnZWwN-eC9$ zYK533y%*GSxFSgIoN);>U)=ijfoM=f5>-qyxCBts!mvn9mY-^gA^;LdeCc)t zx%kk)%SifOr3mkJ7O~afPI)nvA-Wl{GW;bCuTiEuS!oyGRsaIH>8OpuO^2niJ$>)& z7G?x$gO-M$iU{!`x5RLVj4;|Zbz=IQ>q;fDH@;-2cz+7K!ne$F#5l<6#Muyg-pmWa zQG832vDsC`NZjw4TFjv>!6V1s$Jq$_{%#`dM}E6kjE_V(_-I=^Jkl3dxAiS$$oERs z=uHF2VY2_(y6|lxW24G#eZFtV4-jibze|2Z$v=ZQCNSG$WV^J{Rm0_OrlDKYNhpdV z<-9&-Yt*mfI?=Z-Vf#5p%t4WhGG+xI*dMPxJQ--p_x{1y>EZ^e`-*M2q_5^RVPAe` z{H?4T^1}~AG%Dw!?y`csHY>?kr(Y-U(UKp@C{{}9zZNx&t`2oCj+ z$<4eR$t-OVm620xX$mmjg>sM5af$QBXokFb*#Kuzf4)^`h4Y`_gMhDlbmk?uh9@JTZ<54f`aS@zvx8*)Gq3p9pc7w7@cM+!BJs;ou=JA*-1kc>9oyAg9oua_ zk*2?NzQZT&<(jTIwLv1<)rn1rO9un!E{dItL+L!^^B)m@brz5d~hAJsVJ#P_$E%^?6f3(bd!uIJ zp3obomw@+twiJFp?bMbH4=Z!ixYh(y^e?wKrGdewHYS=HpHpYEh+SEbJy*(-!DZYs?t$}jAJ+!5W_-nUaHvtaXgiX4aJ2+b+~Neb&LLIll%o z4>`MhZuawLaoy_0zD99$P8=ySt7&kZ9p#RB!3~|PE?A|394wSj*-G$JR*awB|Ia4# z%p}yFjBr_bJ2^=tj*&0d`hN&8#F$I?OO_n2xiR(P^5hEhqQtY&$LFBq){dLqVW<|J z2M7c`Htm%Enoq5bD^3&CLblPM7NU8Y@d;)(^2PIK=&FXKLw8c>=t`KQR>$LP;U`p6ea%ybNpNR&ABfyl>+?KeF!N-jzm@O5M}zp zdj1tWV^^|v)wu;wZV8?2Rk}f9rVjBd6bCBI47&MdOHr8HH67(~G(f>1_Cp=@-&d5G zU%lp|T{=hy!|@5E<`|_}f~+alJqiweCQzhba@lKJz&1G3G>X8gj8!1P0pP*uO%6+9 z!mq5?e3}v9T1~SVCA|iFj0;?v|DM)DInptb6b0|?l(GgaepsK&{Vn4Z711c#in^-QvTk&54el0H^o;-WrjP zf}4Yw_T9gBF^W6<-5Dp1aPekF=OIv;{r35V>8cU8sOIzfwLy+UnU@&0b{r7i^IsF9 zsf%SDZ!oW$>h`V6>?8U`8Wmpr8-?`-41GzQBe^U?Rz$#SPtQf{?-! zken=0oh`>8?RUBS2v$K){P_nIVZjpENfRshV2vBn;l}K!lAF_?9!V7E-N!RXMt{sl z=PqAG`tb(THu^;aCv+e2ddORnyWa?ixIM^m4UoC~Dbwif^=WJ*%c~X`*x5xwtvWS) zwpPd;k4fjv4<7C%*Q~z^6?1y@<;jndn1WfM3Mr#hHIrYg z!+~gFh&{N$i17Y_kPP+xAn##4`(NJb#3$PAPY~gaCM-+6wDDSwc6x|y129>7S-LEnGSN&OR8HHbjK?${dQL{`s*=vuK6%PBC2arb0tb?8AEG1 z+JC$1hc%P)nRA$IuM0DU!HQOOwD)ha=7=Xolc_d+_&Glhl_)}uzI_+t@AGk^Xn_c$ z(>ATTRg*+co8~x9-zR6yS@rPmDt2RxTHbA(96huy(qCvbAZxO_?q6f2Hp>Z~)}psH zxuCcLnLgtUWR$~zYJ_beC^Y||>6yuB-IH(;mRgfveVMX!Jf_FE*s7BpQX%~>ZBME$ z^}ylhk-yDtkk_Y+UAX*LIxv^UpWFCsjItp455k#tUKq|hvhp#uM2*sH!R@Reo2*q_ z21tY-t{JxOeHlB<7Y(n;wcxFgVO;5>!3w&vS1^G}3ohyczfgzv*`(b0ezI4CM>gM(twy_STZA=nhVr*24=hoZ>{-Z?b zQX#W<|3#*zo31)IXP$4D7FrWtVMa@|*M&}%fM+WCAEGTa54!*7CUW8N7!=A230sKr z2krudYYq1e9qCTm--Jb@#muC`p&rUNEfeeCX~0AFz$LO(B5aomhPYmzA^js9b9vCZ z_n-kRnbAtF;Fo+usPK`CI8JW?Hgk$JW^-SH1C`JO-ENOMq^Hu-$W9w*>%CaH9u61Ojg4 zKlgB!9-`||R^>z-E<9TsL7M9MzZ-<|*VEH3M zI@NBBTmzJ3*j>}WQywYc>ox@$RVstI9Qh`4FS;miqwY8 z3*PP_$_1aGhra_{1}iI&X9@Z;F35=~Y0{hHm*zZVjD9~$P)%w`WyM1nae?^9P|B?P zkV`>w^%7ans3bp_F1~)208+2>u=Lu~HX(nl-C}3$F>;3kOsVbIU4$tN!@FH#?op;w z^3K|vS-Qb9VzHMeNzSmV`=!OpW4~jE)&Mc)%FjwuX5qe{dlGU+pNi1<&ccOvtrs6M zcWKd44r4umLOtNP*y^!JYKO1E8=c{yqBwrZZrEtBotZ0c%WoIB$&OslwFHy!{1GGY zts)q|L6!O1f93lHLyQ0zS!QSaJJ#B+dej&plChmth&Y#YLj}2N4%Q-PR62qk+PP1_ z&SWwp>BUCO-+T?JRN0;NwkG6=84o=v5lvlOh|Nl8ji6E{sI1p6(<29P%-sQ@LHKqpZuFf4F>LeFwz6*#R*j zGcram#o7j+$%&~I{INB=cCHPdAiKb5M><<~Ln3Cdyrw-w=%8Krz(25oWff_xRdGgf zkhK8Ah4cLWflN^hf)H1#o(UVlM8f=fW`H$xqQSFP0vRSXy%9?x3!OSeZ#}TkGms?K zI=&PFb_$suu3vkzG2@R@VFN7f?|W_z&DP9~ppd5F#jxiU8aC>|SO2)@@(=ecja2Xt zr!q$C36!mWq62H$EK?B#MYITG`>w<0)>=yRsot<|V2z*0r&OPb7&28HuFnTu16~fC z$1m34JY^gM3Qo#yh*mEiNu{i`_WTnH5_*s?iVg=GuFU}T?Tv##YSYQX&NUmxj#|dK zekGGtxiGQ~IHszP9hFeB@W&DL1OEEfJwQeh4eDS4JU5;3L z=&2Dmkms>9qW~D4(FLMY($7$Ji1JCS3VedD*A|y+^XKn@ zNdf$MpgVLO#s&FU*4(__Bao%B;F(qx1Zw1{dDeQVEg%Ml$Qb`lnoem&zeI}RH9-JH z_OQ0$jMt8_h_IuA(JZm(8qm|IMkv&lwfBdF2>`BFs&6M+oG3WYiWXsFEDNPimCMe> z<;SS(xXWIk4`A&&WRBJZh^ihyiz%*sYtzUf!g&zeebEvwFG+IYMVoT}L=SLI*wX&| zvo^oVcAN%_&kOGdN+Nn{q`+Bw-)pu0-*d@#EO02&7hpb*BUM5H=?aYT%)lS!1z$@o zTw4Z=>1)5!CDp+A0A^FoUVA3ikxpmD6y%HYKVu3wy%}Mwjn~8dAyG{RbOoyhVhITT zWCf>lwX;~%JURgIFgYygQv?7ANvz7Q5|GXr$?GMEXsF0qy!qAYiCw89ymsZiP}%M7 zw6vfa->LW4TTVu|%HawexV{Nk-#9C%9UjcmbXejeBP;>GDX8pzwH6f6@+%Wua#a%y zzTWs99O_14uKeJmIwQpYm22p7Au&H|qn?NOfli5FMHcGYr}bTsN>) z5dXkNljC=6#@oJYD0--&IV+oSqiLKX?K%m;V6g+J$vYd1a7frm3qeq~e)NmBSK2LT}l{09oJX+ll8QV`vnTeC2)n zU&jL)?CxrG$*~vj6%EdqAMBE3k6*o^Yw!D>(0n4B)E0)_tV5RBBWqpX_3p&8Tkiok z-pR8BLG=2~_r6|~pKoo672#c{Hjujwt_2y8NkmwhnlHAw0TZ!dQ8`N-YMexCEK7}} zI5sy?jB|JSOLu(*WRgg`^6lGdO|RwIQG-8q^^v|u3)tq?T4m#i4%#KTkVky%C?MhJ z7hwX03_s$lwe}4JwJY9hCwz8nfh_VR^Dxq&cD{qzp|lgal+di*b{%M(9CE=JatX*? z0`i@Y=soH{Te)JpDEC3$a%Ms1t_?2mx;`%;QnjrvBPnA+C`x+Bw-=A_*aTnOkm;wB zbdWh}jRDQyTM=`bKg5cTo*dR;l*hUH*ytlIc73gt`9-YbzuexB| z&>U{hiv|^7`sa6H3AZGN-%%{8S?j${S^~9BqXBC_Ll#lFGQL+VymR8iMN(3VMLrXkc>U|B@nKQ}mnwz0%NWrw7%AIJT2 z@1TffovPPx`Q*A9^>sMq+;#xN)L849=US&Ocfeu9*JhwFM&cb>&hTpjZHvVzUO#D= zD2rW8 zh=@o(5NM(Wgzz`5s1teSGQ&@4%a3&DTn5@asHDU?uA+K{2oTi?rz4T=SpfP>?LZ&4 zP@wk*CeYG|9Zobp=DweAn9p5OFL4g2NYro}Ku|vbRj zh1-P|(J)g48U?m3{A2=t-sg8j*O9Fo$MLyDz-;U`h<19uie;S7H0*sOWlfq3dd>~a z>mzZle2!L$;TAL6wP*iqS6C50BA&4pr0u$7N?3r^E}a*|IoMf7&Y;VE*PdP44zosu zMF+ytL(O{Zklf+%zd>X%b_>d zgy7+8eWkDgWPGnJbB-e4UEwP$>ce0Ds*YBd-sV6?j!#cM&psE!8^V(M?|4ccNwn>7 zrI*!knTzp9;beZq6EXd3JT3D4!ky#a71nhv97e`UV6V%BiK6 z%E;${l$K$6%)%q4?<++%kC$&P<9f!F-_`q8k=lkKx~LP|2WxINej!hNOz8$t1oMI> zTMT@EwaPjmB72Z{5K}ucEYDexVq4JU5oQ&lh^NVzPUhwFH5q@{Gj;!U*M(**~5F z|226;rKiOO*F*v3E0Z zq#XbhhAISJ*-CVZ99^ZJO#2y%Z4AtGhA$S(dLlrLToy~J5)fH@tTQUWjd=o~bg{lU zed)GKcZdEZH!4XH7)3JROwQ<*k0f3;VSWMH;^JZNPftz~0&zhkIk_|Dw0s&GGPMRz z%8Ct~2;~a|hEZ}zBF;hpQogo!uyoha+fTOT9=da6;A8>=zYS+plf|5pwzq8k7CXpsP-2}`jPsaFxy)z^s4Av(CQqtupV&^>=j$z>m& zG-oi!2>I!4j3b0{oS+$ByfyuX%6nqRXy13@p;C`2JINv=B7$MLaRm5EiToG7(|x+h z42}K3IKF{=2E@C=2)&7=pLXqeQvO2O!|Vb*YTG+@+vGebE;^C813_F6exdmq}_*w7sSnS{fPN+9-sWMrEck%@ZC|Q&Bb*5(oC(dY^ zH!xpbczki(C&WGxR(VovSV_8M_G8c>OQ{ZBe8{SO6X=7brVB$XvHXp`u0>2MX|!vp z(Qzd^jelz69zKPBqxSdN=h@6@HnkiLB?c611f)csfXy zEKRzZBK8Io=queoPsNbYEyU;cn7tcIgyHtsfId-qf+?pMf+#NCtflQs>m zu)xK^M>8P+KlK3V77EkVg#*X5>oKWhM*;toi3ZI`$<7_=Y4^pyMTf1NX7w{A?Lzq! zhD*?9-nUuRiXaNc>MG3d#F3!t4_T>i57LF@VOY�A6xHOen`7Pg(_tTp*ra2{2Jd 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 _KAD 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 Date: Wed, 3 Jun 2026 16:41:33 +0200 Subject: [PATCH 3/4] add insert and fetch for task-2 --- task-2/src/main/java/org/hyf/Main.java | 268 ++++++++++++++++++++++++- 1 file changed, 266 insertions(+), 2 deletions(-) diff --git a/task-2/src/main/java/org/hyf/Main.java b/task-2/src/main/java/org/hyf/Main.java index 7be95f2..5598b9d 100644 --- a/task-2/src/main/java/org/hyf/Main.java +++ b/task-2/src/main/java/org/hyf/Main.java @@ -1,7 +1,271 @@ package org.hyf; +import java.math.BigDecimal; +import java.sql.*; + public class Main { - public static void main(String[] args) { - System.out.println("You code goes here :) You can overwrite this entire method."); + public static void main(String[] args) throws SQLException { + String url = "jdbc:postgresql://localhost:5432/library"; + String user = "postgres"; + String password = "postgres"; + + try (Connection connection = DriverManager.getConnection(url, user, password)) { + System.out.println("Connected to database"); + + insertData(connection); + fetchData(connection); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + private static void insertData(Connection connection) throws SQLException { + System.out.println("Inserting demo data..."); + + // Insert into publishers + String insertPublisher = "INSERT INTO publishers (publisher_name) VALUES (?) RETURNING publisher_id"; + int publisherId1, publisherId2; + try (PreparedStatement ps = connection.prepareStatement(insertPublisher)) { + ps.setString(1, "Tech Books Publishing"); + ResultSet rs1 = ps.executeQuery(); + rs1.next(); + publisherId1 = rs1.getInt(1); + + ps.setString(1, "Future Minds Press"); + ResultSet rs2 = ps.executeQuery(); + rs2.next(); + publisherId2 = rs2.getInt(1); + } + System.out.println("Publishers data inserted"); + + // Insert into authors + String insertAuthor = "INSERT INTO authors(author_name) VALUES (?) RETURNING author_id"; + int authorId1, authorId2; + try (PreparedStatement ps = connection.prepareStatement(insertAuthor)) { + ps.setString(1, "Ada Lovelace"); + ResultSet rs1 = ps.executeQuery(); + rs1.next(); + authorId1 = rs1.getInt(1); + + ps.setString(1, "Niklaus Wirth"); + ResultSet rs2 = ps.executeQuery(); + rs2.next(); + authorId2 = rs2.getInt(1); + } + System.out.println("Authors data inserted"); + + // Insert into tags + String insertTag = "INSERT INTO tags(tag_name) VALUES (?) RETURNING tag_id"; + int tagId1, tagId2; + try (PreparedStatement ps = connection.prepareStatement(insertTag)) { + ps.setString(1, "computing"); + ResultSet rs1 = ps.executeQuery(); + rs1.next(); + tagId1 = rs1.getInt(1); + + ps.setString(1, "innovation"); + ResultSet rs2 = ps.executeQuery(); + rs2.next(); + tagId2 = rs2.getInt(1); + } + System.out.println("Tags data inserted"); + + // Insert into shelves + String insertShelf = "INSERT INTO shelves(shelf_code) VALUES (?) RETURNING shelf_id"; + int shelfId1, shelfId2; + try (PreparedStatement ps = connection.prepareStatement(insertShelf)) { + ps.setString(1, "D-02"); + ResultSet rs1 = ps.executeQuery(); + rs1.next(); + shelfId1 = rs1.getInt(1); + + ps.setString(1, "E-01"); + ResultSet rs2 = ps.executeQuery(); + rs2.next(); + shelfId2 = rs2.getInt(1); + } + System.out.println("Shelves data inserted"); + + // Insert into books + String insertBook = "INSERT INTO books(book_isbn, book_title, publisher_id) VALUES (?, ?, ?) RETURNING book_id"; + int bookId1, bookId2; + try (PreparedStatement ps = connection.prepareStatement(insertBook)) { + ps.setString(1, "The Future of Computing"); + ps.setString(2, "9790137081073"); + ps.setInt(3, publisherId1); + ResultSet rs1 = ps.executeQuery(); + rs1.next(); + bookId1 = rs1.getInt(1); + + ps.setString(1, "Algorithms Reimagined"); + ps.setString(2, "9790137081094"); + ps.setInt(3, publisherId2); + ResultSet rs2 = ps.executeQuery(); + rs2.next(); + bookId2 = rs2.getInt(1); + } + System.out.println("Books data inserted"); + + // Insert into cards + String insertCard = "INSERT INTO cards(card_number, card_issued_on, card_expires_on) VALUES (?, ?, ?) RETURNING card_id"; + int cardId1, cardId2; + try (PreparedStatement ps = connection.prepareStatement(insertCard)) { + ps.setString(1, "C-1011"); + ps.setDate(2, Date.valueOf("2026-06-01")); + ps.setDate(3, Date.valueOf("2029-06-01")); + ResultSet rs1 = ps.executeQuery(); + rs1.next(); + cardId1 = rs1.getInt(1); + + ps.setString(1, "C-1012"); + ps.setDate(2, Date.valueOf("2026-06-02")); + ps.setDate(3, Date.valueOf("2029-06-02")); + ResultSet rs2 = ps.executeQuery(); + rs2.next(); + cardId2 = rs2.getInt(1); + } + System.out.println("Cards data inserted"); + + // Insert into members + String insertMember = "INSERT INTO members(card_id, member_email, member_name, member_phone, member_address) VALUES (?, ?, ?, ?, ?) RETURNING member_id"; + int memberId1, memberId2; + try (PreparedStatement ps = connection.prepareStatement(insertMember)) { + ps.setInt(1, cardId1); + ps.setString(2, "elen_jo@example.com"); + ps.setString(3, "Elen Jo"); + ps.setString(4, "31601234567"); + ps.setString(5, "Visweg 17, Utrecht"); + ResultSet rs1 = ps.executeQuery(); + rs1.next(); + memberId1 = rs1.getInt(1); + + ps.setInt(1, cardId2); + ps.setString(2, "glen_marti@example.com"); + ps.setString(3, "Glen Marti"); + ps.setString(4, "31601234567"); + ps.setString(5, "Fruitweg 71, Utrecht"); + ResultSet rs2 = ps.executeQuery(); + rs2.next(); + memberId2 = rs2.getInt(1); + + } + System.out.println("Members data inserted"); + + // Insert into copies + String insertCopy = "INSERT INTO copies (copy_barcode, book_id, shelf_id) VALUES (?, ?, ?) RETURNING copy_id"; + int copyId1, copyId2; + try (PreparedStatement ps = connection.prepareStatement(insertCopy)) { + ps.setString(1, "BC-0042"); + ps.setInt(2, bookId1); + ps.setInt(3, shelfId1); + ResultSet rs1 = ps.executeQuery(); + rs1.next(); + copyId1 = rs1.getInt(1); + + ps.setString(1, "BC-0043"); + ps.setInt(2, bookId2); + ps.setInt(3, shelfId2); + ResultSet rs2 = ps.executeQuery(); + rs2.next(); + copyId2 = rs2.getInt(1); + } + System.out.println("Copies data inserted"); + + // Insert into borrows + String insertBorrows = "INSERT INTO borrows(member_id, copy_id, borrowed_at, due_date, returned_at, fine_eur) VALUES (?, ?, ?, ?, ?, ?)"; + try (PreparedStatement ps = connection.prepareStatement(insertBorrows)) { + ps.setInt(1, memberId1); + ps.setInt(2, copyId1); + ps.setTimestamp(3, Timestamp.valueOf("2026-06-01 10:00:00")); + ps.setTimestamp(4, Timestamp.valueOf("2026-07-01 10:00:00")); + ps.setTimestamp(5, null); + ps.setBigDecimal(6, BigDecimal.ZERO); + ps.executeUpdate(); + + ps.setInt(1, memberId2); + ps.setInt(2, copyId2); + ps.setTimestamp(3, Timestamp.valueOf("2026-04-04 10:00:00")); + ps.setTimestamp(4, Timestamp.valueOf("2026-05-04 10:00:00")); + ps.setTimestamp(5, null); + ps.setBigDecimal(6, new BigDecimal("4.15")); + ps.executeUpdate(); + } + System.out.println("Borrows data inserted"); + + // Insert into book_authors + String insertBookAuthor = "INSERT INTO book_authors(book_id, author_id) VALUES (?, ?)"; + try (PreparedStatement ps = connection.prepareStatement(insertBookAuthor)) { + ps.setInt(1, bookId1); + ps.setInt(2, authorId1); + ps.executeUpdate(); + + ps.setInt(1, bookId2); + ps.setInt(2, authorId1); + ps.executeUpdate(); + + ps.setInt(1, bookId2); + ps.setInt(2, authorId2); + ps.executeUpdate(); + } + System.out.println("Book_author data inserted"); + + // Insert into book_tags + String insertBookTag = "INSERT INTO book_tags(book_id, tag_id) VALUES (?, ?)"; + try (PreparedStatement ps = connection.prepareStatement(insertBookTag)) { + ps.setInt(1, bookId1); + ps.setInt(2, tagId1); + ps.executeUpdate(); + + ps.setInt(1, bookId1); + ps.setInt(2, tagId2); + ps.executeUpdate(); + + ps.setInt(1, bookId2); + ps.setInt(2, tagId2); + ps.executeUpdate(); + } + System.out.println("Book_tag data inserted"); + System.out.println("All data successfully inserted"); + + } + + private static void fetchData(Connection connection) throws SQLException{ + System.out.println("\nFetching data..."); + + String sql = """ + SELECT + br.borrow_id, + m.member_name, + b.book_title, + br.borrowed_at, + br.due_date, + br.returned_at, + br.fine_eur + FROM borrows br + JOIN members m ON br.member_id = m.member_id + JOIN copies c ON br.copy_id = c.copy_id + JOIN books b ON c.book_id = b.book_id + ORDER by br.borrow_id + LIMIT 10 + """; + + try (PreparedStatement ps = connection.prepareStatement(sql); + ResultSet rs = ps.executeQuery()) { + + while (rs.next()) { + int borrowId = rs.getInt("borrow_id"); + String memberName = rs.getString("member_name"); + String bookTitle = rs.getString("book_title"); + Timestamp borrowedAt = rs.getTimestamp("borrowed_at"); + Timestamp dueDate = rs.getTimestamp("due_date"); + Timestamp returnedAt = rs.getTimestamp("returned_at"); + BigDecimal fine = rs.getBigDecimal("fine_eur"); + + System.out.println("Borrow #" + borrowId + " | Member: " + memberName + " | Book: " + bookTitle + " | Borrowed: " + borrowedAt + " | Due: " + dueDate + " | Returned: " + returnedAt + " | Fine: " + fine); + } + } + System.out.println("Fetch completed."); } } + + From 036b2b8f8742611151b0cce8966ef603aa90fdd2 Mon Sep 17 00:00:00 2001 From: Yana Pechenenko Date: Wed, 3 Jun 2026 17:51:26 +0200 Subject: [PATCH 4/4] finish task-2 --- task-2/src/main/java/org/hyf/Main.java | 9 ++++----- task-2/target/classes/org/hyf/Main.class | Bin 0 -> 11354 bytes .../compile/default-compile/createdFiles.lst | 1 + .../compile/default-compile/inputFiles.lst | 1 + 4 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 task-2/target/classes/org/hyf/Main.class create mode 100644 task-2/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst create mode 100644 task-2/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst diff --git a/task-2/src/main/java/org/hyf/Main.java b/task-2/src/main/java/org/hyf/Main.java index 5598b9d..6c5fd8c 100644 --- a/task-2/src/main/java/org/hyf/Main.java +++ b/task-2/src/main/java/org/hyf/Main.java @@ -90,15 +90,15 @@ private static void insertData(Connection connection) throws SQLException { String insertBook = "INSERT INTO books(book_isbn, book_title, publisher_id) VALUES (?, ?, ?) RETURNING book_id"; int bookId1, bookId2; try (PreparedStatement ps = connection.prepareStatement(insertBook)) { - ps.setString(1, "The Future of Computing"); - ps.setString(2, "9790137081073"); + ps.setString(1, "979013708"); + ps.setString(2, "The Future of Computing"); ps.setInt(3, publisherId1); ResultSet rs1 = ps.executeQuery(); rs1.next(); bookId1 = rs1.getInt(1); - ps.setString(1, "Algorithms Reimagined"); - ps.setString(2, "9790137081094"); + ps.setString(1, "9790137081"); + ps.setString(2, "Algorithms Reimagined"); ps.setInt(3, publisherId2); ResultSet rs2 = ps.executeQuery(); rs2.next(); @@ -246,7 +246,6 @@ private static void fetchData(Connection connection) throws SQLException{ JOIN copies c ON br.copy_id = c.copy_id JOIN books b ON c.book_id = b.book_id ORDER by br.borrow_id - LIMIT 10 """; try (PreparedStatement ps = connection.prepareStatement(sql); diff --git a/task-2/target/classes/org/hyf/Main.class b/task-2/target/classes/org/hyf/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..da6d7d8bd3d5adabadf0ad0bdced3963116a017d GIT binary patch literal 11354 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