PMG2426 4/DB Beleg/Oliver
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>SQL</language> =='''Datenbank Medien'''== [[Bild:Ol_sch_Erplus.png|900px]] ==='''Relationen-Modell'''=== ---- [[Bild:Ol sch_Erdplus(1).png|700px]] ==='''aber warum?'''=== ---- Ich habe mich für das Thema Medien entschieden, weil es ein Bereich ist, mit dem jeder im Alltag zu tun hat, sei es durch Filme, Musik, oder Bücher. Das macht das Projekt anschaulich und praxisnah. Technisch gesehen ist das Thema deshalb so interessant, weil man hier sehr gut zeigen kann, wie verschiedene Daten miteinander verknüpft sind. Zum Beispiel arbeitet man viel mit Beziehungen zwischen Tabellen, etwa wenn man Künstler ihren Werken oder verschiedene Genres zuordnet. Außerdem bietet das Thema genug Spielraum, um komplexe Suchfunktionen und Filter einzubauen, die genau so auch bei echten Streaming-Plattformen oder Online-Shops funktionieren würde ===Die Datenbank=== ---- <code id="6586f4e1c980b"> CREATE TABLE Nutzer ( Nutzer_ID INT PRIMARY KEY, Nuzter_Name VARCHAR(255), Postleitzahl VARCHAR(255), Wohnort VARCHAR(255), Geburtsdatum INT ); CREATE TABLE Medien ( Medien_ID INT PRIMARY KEY, Titel VARCHAR(255), Erscheinugsjahr VARCHAR(255), Status VARCHAR(255), Genre VARCHAR(255) ); CREATE TABLE Leihe ( Leih_ID INT PRIMARY KEY, Leihdatum VARCHAR(255), Rückgabedatum VARCHAR(255), Medien_ID INT, FOREIGN KEY (Medien_ID) REFERENCES Medien(Medien_ID), Nutzer_ID INT, FOREIGN KEY (Nutzer_ID) REFERENCES Nutzer(Nutzer_ID), ); CREATE TABLE Bücher ( Medien_ID INT PRIMARY KEY, Einband VARCHAR(255), Seitenzahl VARCHAR(255), ISBN VARCHAR(255), FOREIGN KEY (Medien_ID) REFERENCES Medien(Medien_ID) ); CREATE TABLE Filme ( Medien_ID INT PRIMARY KEY, Auflösung VARCHAR(255), Laufzeit VARCHAR(255), Produzent VARCHAR(255), FOREIGN KEY (Medien_ID) REFERENCES Medien(Medien_ID) ); </code> ===Daten=== ---- <code id="69773b044fded"> INSERT INTO Nutzer VALUES (1, 'Heinz33', '02625', 'Bautzen', '1999'); INSERT INTO Nutzer VALUES (2, 'Barabra8', '80331', 'München', '1998'); INSERT INTO Nutzer VALUES (3, 'Heinz56', '10115', 'Berlin', '2000'); INSERT INTO Nutzer VALUES (4, 'Klaus', '20095', 'Hamburg', '1999'); INSERT INTO Nutzer VALUES (5, 'Kunz', '44135', 'Dortmund', '1970'); INSERT INTO Medien VALUES (1, 'Parasite', '2019', 'Ausleihbar', 'Thriller'); INSERT INTO Medien VALUES (2, 'Inception', '2010', 'Ausleihbar', 'Action'); INSERT INTO Medien VALUES (3, 'Die Verurteilten', '1994', 'Nicht verfügbar', 'Drama'); INSERT INTO Medien VALUES (4, 'Get Out', '2017', 'Ausleihbar', 'Horror'); INSERT INTO Medien VALUES (5, 'Das Leben ist schön', '1997', 'Nicht verfügbar', 'Drama'); INSERT INTO Medien VALUES (6, 'Der Alchimist', '1988', 'Ausleihbar', 'Abenteuer'); INSERT INTO Medien VALUES (7, 'Der Herr der Ringe', '1955', 'Nicht verfügbar', 'Fantasy'); INSERT INTO Medien VALUES (8, 'Nineteen Eighty-Four', '1949','Nicht verfügbar', 'Dystopie'); INSERT INTO Medien VALUES (9, 'Die Känguru Chroniken', '2009', 'Ausleihbar', 'Comedy'); INSERT INTO Medien VALUES (10, 'Der Kleine Prinz', '1943', 'Ausleihbar', 'Kinderliteratur'); INSERT INTO Leihe VALUES (1, '10.01.2020', '10.02.2020', '1', '2'); INSERT INTO Leihe VALUES (2, '01.07.2023', '01.08.2023', '2', '1'); INSERT INTO Leihe VALUES (3, '04.08.2022', '04.09.2022', '7', '1'); INSERT INTO Leihe VALUES (4, '01.08.2020', '01.09.2020', '4', '4'); INSERT INTO Leihe VALUES (5, '01.07.2023', '01.11.2023', '9', '5'); INSERT INTO Bücher VALUES (1, '030-1234567', 'Musterstraße 1, Berlin'); INSERT INTO Bücher VALUES (2, '040-2345678', 'Lindenweg 5, Hamburg'); INSERT INTO Bücher VALUES (3, '089-3456789', 'Kirchplatz 3, München'); INSERT INTO Bücher VALUES (4, '069-4567890', 'Wiesenweg 10, Frankfurt'); INSERT INTO Bücher VALUES (5, '0221-5678901', 'Bahnhofstraße 8, Köln'); INSERT INTO Filme VALUES (1, '030-1234567', 'Musterstraße 1, Berlin'); INSERT INTO Filme VALUES (2, '040-2345678', 'Lindenweg 5, Hamburg'); INSERT INTO Filme VALUES (3, '089-3456789', 'Kirchplatz 3, München'); INSERT INTO Filme VALUES (4, '069-4567890', 'Wiesenweg 10, Frankfurt'); INSERT INTO Filme VALUES (5, '0221-5678901', 'Bahnhofstraße 8, Köln'); </code>