M5_02 SQL 1. Datenbankabfragen auf nur einer Tabelle Kerstin Strecker Datensprache • • • besteht aus zwei Teilen: Daten-Definitions-Sprache (DDL): zur Definition der Datenbankobjekte die der Strukturierung und Verwaltung der Datenbasis dienen, z.B. der Tabellen Daten-Manipulations-Sprache (DML): für den Zugriff auf die eigentlichen Daten der Datenbasis 06.03.2013 2 SQL (structured query language) • • • basiert auf der relationalen Algebra verschiedene „Dialekte“ select-Befehl, wichtigster und umfangreichster Befehl, steht im Abitur und bei unseren Präsenztagen im Fokus 06.03.2013 3 SQL • • Ist eine deklarative Sprache Man gibt nicht an wie Daten gewonnen werden (siehe Java), sondern was für Daten man haben möchte 06.03.2013 4 SQL • • • Beispiel: Wer wohnt in Göttingen? Name Wohnort Max Mustermann Göttingen Lieschen Müller Berlin Fritz Meier Göttingen Ralf Schulze Hamburg bisher wie: betrachte erste Zeile der Tabelle. Ist der Wohnort=‟Göttingen“ füge Namen zur Ergebnisliste hinzu, betrachte zweite Zeile der Tabelle,…. jetzt was: gib mir alle Namen, bei denen der zugehörige Wohnort ′Göttingen′ ist. select Name from Tabelle where Wohnort= ′Göttingen′ 06.03.2013 5 Tabellen und ihre Kurzschreibweise Lehrer: Lehrerkürzel Name Fach1 Fach2 Alter NEU Paul Neumann Mathe Physik 63 ALT Erika Altmann Physik Chemie 46 Kurzschreibweise: Lehrer (Lehrerkürzel, Name, Fach1, Fach2, Alter) 06.03.2013 6 Tabellen und ihre Kurzschreibweise Tabellenname(Spalte1, Spalte2, Spalte3, Spalte4) - Schlüsselattribute werden unterstrichen - Sind Attribute Fremdschlüssel, bekommen sie einen Pfeil ↑ davor Name der Tabelle Schlüssel Fremdschlüssel Unterricht(Klasse, ↑Lehrerkürzel, ↑Fach, Mappenfarbe, Anzahl Arbeiten, Anzahl Wochenstunden) Liste der Attribute, Spaltenüberschriften in () 7 Der select-Befehl 1. Datenbankabfragen auf nur einer Tabelle select … from … where … select (welche Spalten) from (aus welcher Tabelle stammen die Spalten) where (optional, Bedingung unter der man die Datensätze aussucht) 06.03.2013 9 Beispiel Gib alle Lehrer aus, die Physik unterrichten Lehrer: Lehrerkürzel Name Fach1 Fach2 Alter NEU Paul Neumann Mathe Physik 63 ALT Erika Altmann Physik Chemie 46 select Name from Lehrer where Fach1=′Physik′ or Fach2=′Physik′ Ergebnis: Name Paul Neumann Erika Altmann 06.03.2013 10 1. Übungsteil- Datenbankabfragen auf nur einer Tabelle http://www.schulserver.hessen.de/darmstadt/lichtenberg/SQLTutorial/ Arbeitsauftrag: ⇒ Alle bearbeiten Lektion 1 1. Lesen Sie sich das Tutorial zu Lektion 1 durch. 2. Erstellen Sie eine Übersicht über die ⇒ für Schnelle: Lektion 2 verschiedenen Abfragen, speichern Sie diese und drucken Sie die Übersicht aus. 3. Bearbeiten Sie die Übungsaufgaben zu Lektion 1. Korrigieren/Ergänzen Sie ggf. Ihre Übersicht. Bearbeitungszeit + Pause: 45 Minuten 06.03.2013 11