Die «Open Media Database» – kurz «omdb» – ist eine Webseite welche Informationen zu Filmen und Serien anbietet.
Sie stellt ihre Daten als CSV-Dateien zur Verfügung. Daraus haben wir bei uns am Gymer eine Datenbank erstellt, welche man unter der folgenden URL abfragen kann:
Nachfolgend aufgezeichnet ist das komplette ER-Diagramm der Datenbank inkl. Attribute und Relationen.
Im Folgenden werden die einzelnen Tabellen und ihre Felder kurz beschrieben:
Filme/Serien 
Tabelle «movies» 
Speichert eine einzelnes Objekt (Film, Serie, Season, …) mit ihrem Namen, einer Beschreibung und weiteren Angaben zu Status, Ausstrahlung und Produktion.
 In der Beispiel-Spalte werden die Werte für den Film «Titanic» und eine Episode der Serie «Lost» angezeigt.
| Attribut | Datentyp | Beschreibung | «Titanic» | «Lost» | 
|---|---|---|---|---|
| id | integer | Primärschlüssel | 597 | 2889 | 
| name | text | Titel/Name | Titanic | The Moth | 
| parent_id | integer | Fremdschlüssel (season oder movieseries) | 2865 | |
| date | date | Datum der Erstaustrahlung | 1997-12-18 | 2004-11-03 | 
| series_id | integer | Fremdschlüssel (series) | 2864 | |
| kind | enum | Art (movie, series, season, episode, movieseries) | movie | episode | 
| runtime | int | Dauer in Minuten | 194 | |
| budget | decimal | Ausgaben in USD | 200000000 | |
| revenue | decimal | Einnahmen in USD | 2187463944 | |
| homepage | text | Link | ||
| votes_average | decimal | Bewertung im Schnitt | 7 | 8 | 
| votes_count | integer | Anzahl Bewertungen | 204 | 5 | 
SHOW COLUMNS FROM movies;                -- Zeige alle Spalten an
SELECT * from movies where name LIKE "Titanic"; -- Suche nach Titanic
SELECT * from movies WHERE id = 597;   -- Zeige den Eintrag für «Titanic» anTabelle «abstracts» 
Hier werden für die Filme/Serien kleine Zusammenfassungen gespeichert.
| Attribut | Datentyp | Beschreibung | «Titanic» | 
|---|---|---|---|
| movie_id | integer | Fremdschlüssel | 597 | 
| text | text | Zusammenfassungen | Titanic is the blockbuster film from James Cameron starring… | 
SELECT * from abstracts WHERE id = 597;Tabelle «trailers» 
Hier werden Trailers von Youtube und so verlinkt. Beim folgenden Beispiel kann man aus dem Eintrag den Youtube-Link rekonstruieren:
| Attribut | Datentyp | Beschreibung | «Titanic» | 
|---|---|---|---|
| id | integer | Primärschlüssel | 66 | 
| key | text | Video-Schlüssel | CHekzSiZjrY | 
| movie_id | integer | Fremdschlüssel | 597 | 
| language | text | Sprache | en | 
| source | text | Quelle | youtube | 
SELECT * from trailers WHERE id = 597;Personen 
Tabelle «people» 
Hier sind alle Personen – egal ob Schauspieler:in, Regisseur:in oder Makeup-Artist:in gespeichert.
| Attribut | Datentyp | Beschreibung | «Harrison Ford» | «Stanley Kubrick» | 
|---|---|---|---|---|
| id | integer | Primärschlüssel | 3 | 240 | 
| name | text | Name | Harrison Ford | Stanley Kubrick | 
| birthday | date | Geburtstag | 1942-07-13 | 1928-07-26 | 
| deathday | date | Todestag | 1999-03-07 | 
SHOW COLUMNS FROM people;                -- Zeige alle Spalten an
SELECT * from people WHERE name LIKE "Harrison Ford"; -- Suche nach Harrison Ford
SELECT * from people WHERE id = 3;   -- Zeige den Eintrag für «Harrison Ford» anTabelle «casts» 
Verknüpft Filme/Serien mit Personen und Jobs: Wer hat wo und wie mitgemacht?
| Attribut | Datentyp | Beschreibung | «Titanic» | «Harrison Ford» | 
|---|---|---|---|---|
| movie_id | integer | Fremdschlüssel | 597 | 11 | 
| person_id | integer | Fremdschlüssel | 204 | 3 | 
| job_id | integer | Fremdschlüssel | 15 | 15 | 
| role | text | Rolle | Rose DeWitt Bukater | Han Solo | 
| position | integer | Primärschlüssel | 1 | 3 | 
SHOW COLUMNS FROM casts;                -- Zeige alle Spalten an
SELECT * FROM casts WHERE movie_id = 597 ORDER BY position;   -- cast von Titanic
SELECT * FROM casts WHERE person_id = 3;  -- Cast für «Harrison Ford» anTabelle «jobs» 
Welche Aufgabe erledigen die Mitwirkenden: Actor, Author, Producer, Director, …
| Attribut | Datentyp | Beschreibung | Beispiel | 
|---|---|---|---|
| id | integer | Primärschlüssel | 15 | 
| name | text | Beschreibung | Actor | 
SHOW COLUMNS FROM jobs;                -- Zeige alle Spalten an
SELECT * FROM jobs where id = 15;Bilder 
Tabelle «images» 
Hier werden Bilder von Schauspieler:innen und Filmen/Serien verwaltet.
| Attribut | Datentyp | Beschreibung | «Titanic» | «Harrison Ford» | 
|---|---|---|---|---|
| id | integer | Primärschlüssel | 1053 | 6 | 
| object_id | integer | Fremdschlüssel | 597 | 3 | 
| type | text | Art des Bildes | Movie | Person | 
| version | int | Versionsnummer | 3 | 
SHOW COLUMNS FROM images;                -- Zeige alle Spalten an
SELECT * FROM images WHERE object_id = 597 AND type = "Movie";Mit diesen Daten können Bild-URLs rekonstruiert werden:
<img src="https://www.omdb.org/image/default/1053.jpeg" />
<img src="https://www.omdb.org/image/default/6.jpeg?v=3" />

Statt default kann in der URL auch small oder medium verwendet werden. Man erhält dann das Bild in einer geringeren Auflösung.
<img src="https://www.omdb.org/image/small/123.jpeg?v=2" />
<img src="https://www.omdb.org/image/medium/123.jpeg?v=2" />
<img src="https://www.omdb.org/image/default/123.jpeg?v=2" />

