Hallo,
ich besuche die 9te Klasse eines Gymnasiums und versuche mir SQL selber beizubringen, da mir das gefällt und ich das auch in der Schule können muss. Da wir in gut 3 Wochen eine Arbeit schreiben, will ich unbedingt mit selbst SQL aneignen und natürlich auch eine gute Note erzielen. Rein privat programmiere ich in Python und in XPROFAN (damit habe ich aber zurzeit aufgehört).
Es handelt sich um eine Aufgabe, die wir demnächst im Unterricht korregieren werden, die dazu verhilft, eine eigene Datenbank zu erstellen, zu planen und richtig zu strukturieren.
Es ist nicht so, dass ich nichts verstehe , sondern will wissen, ob mein Gedankengang richtig ist.
Aufgabe:
In einer Stadt gibt es mehrere Videotheken XVIEW (Tel 12345), YVIEW(Tel 56789) und ZVIEW(Tel 192837). XVIEW liegt in Xantipelleallee, YVIEW in Ypsweg und ZVIEW in der Zeppelinstraße. Jede Videothek wird von genau einem Mitarbeiter geleitet. Dabei haben alle Leiter von Videotheken unterschiedliche Namen, einen Vornamen und ein Gehalt.
Jede Videothek vertreibt mehrere Filme aber immer nur eines bestimmten Genres: XVIEW - Abenteuerfilme, YVIEW - Märchenfilme und ZVIEW - Musikfilme. Jeder dieser Filme hat eine Kurzbezeichnung und einen Herstellert. Von einem Film stehen in einer Videothek mehrere Exemplare zur Ausleihe bereit. Kunden mit Namen und Vornamen können sich in der Videothek ein oder mehrere Filme ausleihen.
1. Erstelle ein ER-Diagramm
- dazu gehört: Entitäten mit Attributen, Relationen, Kardinalitäten, Primärschlüssel
Das habe ich bereits meinem Lehrer gezeigt. Er hatte mir Recht gegeben. Daher denke ich auch, dass das so OK ist.
2. Erstelle ein Datenbankschema!
- dazu gehört: Tabellenentwurf für Entitäten und Relationen
- Tabellenname, Attribut-Spaltennamen mit Typ, Primär-/Sekundärschlüssel
Meine dazugehörige Lösung (da bin ich mir etwas unsicher):
rot = Primärschlüssel blau = importierter Fremdschlüssel
Mitarbeiter(Name : Varchar(30); Gehalt : Int; Vorname : Varchar(30))
Videothek(Telefonnr : Int; Ort : Varchar(20); Name2 : Varchar(30); Name : Varchar(30))
Filme(Kurzbezeichnung : Varchar(20); Hersteller : Varchar(30); Genre : Varchar(20); Telefonnr : Int)
Kunden(ID : Int; Vorname : Varchar(20); Name: Varchar(20); Kurzbezeichnung : Varchar(20))
Verleihen(Kurzbezeichnung : Varchar(20); ID : Int)
Nun - ich habe die für die Relation "Verleihen" eine Tabelle erstellt, weil es eine n:m Beziehung ist, dass heist, dass keine Vereinfachung möglich ist.
Dabei wäre meine Frage, ob dies richtig ist.
3. Verfeinere das Datenbankschema!
- Verfeinerung von 1:1
- Verfeinerung von 1:n
- sinnvoller Import der Sekundärschlüssel
In Aufgabe 2 schon gemacht. Jedoch frage ich mich, ob ich die Sekundärschlüssel richtig importiert habe und was der Begriff "Sekundärschlüssel" eigentlich bedeutet.
4. Setze das verfeinerte Datenbankschema in eine Datenbank mit SQL um!
Dabei habe ich all diese Tabellen angelegt (Genau nach den Datenbankschema), jedoch weiss ich nicht, wie ich den "Code" abrufen kann, mit dem ich diese Datenbank erstellt habe.
Wie kann man den Code einsehen?
5. Fülle Deine Tabellen mit mindestens 5 Einträgen.
Da ich blöderweise dazu ein Arbeitsblatt verloren habe, wusste ich nicht wie man Daten mit Hilfe eines Scripts einfügen kann. Deshalb habe ich die Datenbank geöffnet und habe dabei einen Eintrag eingetragen.Da ich wieder nicht auf die Idee gekommen bin, nach den richtigen Befehlen zu googlen, werde ich es natürlich demnächst machen!
Wenn ich den Eintrag in die Tabelle Mitarbeiter einfüge, müsste doch dieser Schlüssel doch auch in der Tabelle Videothek sein, weil ich den Schlüssel der Datenbank Mitarbeiter ind die Datenbank Videothek importiert habe? -> Schlüssel nicht zu sehen
Ich denke zwar, dass ich weiss, wass "Fremdschlüssel importieren" bedeutet, jedoch will ich auf Nummer sicher gehen und diese Sache von einem Profi erklären lassen.
Eine Frage, die nicht zur Aufgabe gehört:
Es geht um das Thema Kardinalitäten. Jetzt unterrichten n Lehrer m Klassen. Ist das dann auch gleich, wenn man das m Lehrer nennt wie z.B. Jetzt unterrichten m Lehrer n Klassen. Schon, oder?
Das wars vorerst! Freue mich auf Antwort!
Liebe Grüße
-Gary
ich besuche die 9te Klasse eines Gymnasiums und versuche mir SQL selber beizubringen, da mir das gefällt und ich das auch in der Schule können muss. Da wir in gut 3 Wochen eine Arbeit schreiben, will ich unbedingt mit selbst SQL aneignen und natürlich auch eine gute Note erzielen. Rein privat programmiere ich in Python und in XPROFAN (damit habe ich aber zurzeit aufgehört).
Es handelt sich um eine Aufgabe, die wir demnächst im Unterricht korregieren werden, die dazu verhilft, eine eigene Datenbank zu erstellen, zu planen und richtig zu strukturieren.
Es ist nicht so, dass ich nichts verstehe , sondern will wissen, ob mein Gedankengang richtig ist.
Aufgabe:
In einer Stadt gibt es mehrere Videotheken XVIEW (Tel 12345), YVIEW(Tel 56789) und ZVIEW(Tel 192837). XVIEW liegt in Xantipelleallee, YVIEW in Ypsweg und ZVIEW in der Zeppelinstraße. Jede Videothek wird von genau einem Mitarbeiter geleitet. Dabei haben alle Leiter von Videotheken unterschiedliche Namen, einen Vornamen und ein Gehalt.
Jede Videothek vertreibt mehrere Filme aber immer nur eines bestimmten Genres: XVIEW - Abenteuerfilme, YVIEW - Märchenfilme und ZVIEW - Musikfilme. Jeder dieser Filme hat eine Kurzbezeichnung und einen Herstellert. Von einem Film stehen in einer Videothek mehrere Exemplare zur Ausleihe bereit. Kunden mit Namen und Vornamen können sich in der Videothek ein oder mehrere Filme ausleihen.
1. Erstelle ein ER-Diagramm
- dazu gehört: Entitäten mit Attributen, Relationen, Kardinalitäten, Primärschlüssel
Das habe ich bereits meinem Lehrer gezeigt. Er hatte mir Recht gegeben. Daher denke ich auch, dass das so OK ist.
2. Erstelle ein Datenbankschema!
- dazu gehört: Tabellenentwurf für Entitäten und Relationen
- Tabellenname, Attribut-Spaltennamen mit Typ, Primär-/Sekundärschlüssel
Meine dazugehörige Lösung (da bin ich mir etwas unsicher):
rot = Primärschlüssel blau = importierter Fremdschlüssel
Mitarbeiter(Name : Varchar(30); Gehalt : Int; Vorname : Varchar(30))
Videothek(Telefonnr : Int; Ort : Varchar(20); Name2 : Varchar(30); Name : Varchar(30))
Filme(Kurzbezeichnung : Varchar(20); Hersteller : Varchar(30); Genre : Varchar(20); Telefonnr : Int)
Kunden(ID : Int; Vorname : Varchar(20); Name: Varchar(20); Kurzbezeichnung : Varchar(20))
Verleihen(Kurzbezeichnung : Varchar(20); ID : Int)
Nun - ich habe die für die Relation "Verleihen" eine Tabelle erstellt, weil es eine n:m Beziehung ist, dass heist, dass keine Vereinfachung möglich ist.
Dabei wäre meine Frage, ob dies richtig ist.
3. Verfeinere das Datenbankschema!
- Verfeinerung von 1:1
- Verfeinerung von 1:n
- sinnvoller Import der Sekundärschlüssel
In Aufgabe 2 schon gemacht. Jedoch frage ich mich, ob ich die Sekundärschlüssel richtig importiert habe und was der Begriff "Sekundärschlüssel" eigentlich bedeutet.
4. Setze das verfeinerte Datenbankschema in eine Datenbank mit SQL um!
Dabei habe ich all diese Tabellen angelegt (Genau nach den Datenbankschema), jedoch weiss ich nicht, wie ich den "Code" abrufen kann, mit dem ich diese Datenbank erstellt habe.
Wie kann man den Code einsehen?
5. Fülle Deine Tabellen mit mindestens 5 Einträgen.
Da ich blöderweise dazu ein Arbeitsblatt verloren habe, wusste ich nicht wie man Daten mit Hilfe eines Scripts einfügen kann. Deshalb habe ich die Datenbank geöffnet und habe dabei einen Eintrag eingetragen.Da ich wieder nicht auf die Idee gekommen bin, nach den richtigen Befehlen zu googlen, werde ich es natürlich demnächst machen!
Wenn ich den Eintrag in die Tabelle Mitarbeiter einfüge, müsste doch dieser Schlüssel doch auch in der Tabelle Videothek sein, weil ich den Schlüssel der Datenbank Mitarbeiter ind die Datenbank Videothek importiert habe? -> Schlüssel nicht zu sehen
Ich denke zwar, dass ich weiss, wass "Fremdschlüssel importieren" bedeutet, jedoch will ich auf Nummer sicher gehen und diese Sache von einem Profi erklären lassen.
Eine Frage, die nicht zur Aufgabe gehört:
Es geht um das Thema Kardinalitäten. Jetzt unterrichten n Lehrer m Klassen. Ist das dann auch gleich, wenn man das m Lehrer nennt wie z.B. Jetzt unterrichten m Lehrer n Klassen. Schon, oder?
Das wars vorerst! Freue mich auf Antwort!
Liebe Grüße
-Gary