diff --git a/lesson_28/db/db_app/src/main/java/com/codedifferently/lesson28/models/CheckoutModel.java b/lesson_28/db/db_app/src/main/java/com/codedifferently/lesson28/models/CheckoutModel.java index f196513ee..884b3b667 100644 --- a/lesson_28/db/db_app/src/main/java/com/codedifferently/lesson28/models/CheckoutModel.java +++ b/lesson_28/db/db_app/src/main/java/com/codedifferently/lesson28/models/CheckoutModel.java @@ -1,10 +1,11 @@ package com.codedifferently.lesson28.models; +import java.time.Instant; +import java.util.UUID; + import jakarta.persistence.Entity; import jakarta.persistence.Id; import jakarta.persistence.Table; -import java.time.Instant; -import java.util.UUID; @Entity @Table(name = "checked_out_items") diff --git a/lesson_28/db/db_app/src/main/java/com/codedifferently/lesson28/models/LibraryUserModel.java b/lesson_28/db/db_app/src/main/java/com/codedifferently/lesson28/models/LibraryUserModel.java new file mode 100644 index 000000000..ab9c0a024 --- /dev/null +++ b/lesson_28/db/db_app/src/main/java/com/codedifferently/lesson28/models/LibraryUserModel.java @@ -0,0 +1,15 @@ +public class LibraryUserModel { + private String id; + private String email; + private String firstName; + private String lastName; + private String password; + + public LibraryUserModel(String id, String email, String firstName, String lastName, String password) { + this.id = id; + this.email = email; + this.firstName = firstName; + this.lastName = lastName; + this.password = password; + } +} diff --git a/lesson_28/db/db_app/src/main/resources/queries/oliviajames.sql b/lesson_28/db/db_app/src/main/resources/queries/oliviajames.sql new file mode 100644 index 000000000..f5dfcb567 --- /dev/null +++ b/lesson_28/db/db_app/src/main/resources/queries/oliviajames.sql @@ -0,0 +1,31 @@ +SELECT * FROM media_items + +SELECT type, COUNT(*) AS count +FROM media_items +GROUP BY type; + +SELECT SUM (m.pages) AS total_pages_checked_out +FROM checked_out_items c +JOIN media_items m ON c.item_id = m.id; + +SELECT g.name, c.* +FROM guests g +LEFT JOIN checked_out_items c ON g.email = c.email + +DROP TABLE library_users; + +CREATE TABLE library_users ( + id TEXT PRIMARY KEY, + email TEXT NOT NULL UNIQUE, + first_name TEXT NOT NULL, + last_name TEXT NOT NULL, + password TEXT NOT NULL +); + +INSERT INTO library_users (id, email, first_name, last_name, password) +VALUES +('1', 'jane@example.com', 'Jane', 'Doe', '$2a$10$8Sbo8w4UTo7PYYMRAfE8ieBaQYqDZV9AYw2x9AlFFeFZ3Y3q1TxMi'), +('2', 'john@example.com', 'John', 'Smith', '$2a$10$L8lWx.L3QhxiKyzYJCTi7uYTeKKbqElxRYHO6mGjc5Cfb5pY3HHQO'), +('3', 'olivia@example.com', 'Olivia', 'James', '$2a$10$kRrQ3YbeXYbXl9F6sUYOYOX5pK8flNOuNcByVRKz9ChfLYUM6ZKAe'); + +SELECT * FROM library_users; \ No newline at end of file diff --git a/lesson_28/db/db_app/src/main/resources/sqlite/data.db b/lesson_28/db/db_app/src/main/resources/sqlite/data.db index 8baa982d2..23da1d00e 100644 Binary files a/lesson_28/db/db_app/src/main/resources/sqlite/data.db and b/lesson_28/db/db_app/src/main/resources/sqlite/data.db differ