-09- Arbeitsunterlagen DVT LK13.1 2014/2015 Abfragen in Access SQL Lehrkraft: __________________ Kurs: 0 __________________ Klasse / Kurs: Thema / LS: Datum: DVT LK13.1 2014/2015 Wir haben im Unterricht alle relevanten Entwicklungsschritte einer Datenbank kennen gelernt. Anforderungsspezifikation (Analyse) Durch die systematische Auswertung von Dokumenten oder das Befragen von Mitarbeitern und Vorgesetzten wird ein Lasten- und Pflichtenheft erstellt. Dieses beinhaltet Informationen über die zu speichernden Daten und die zu implementierenden Operationen auf diesen Daten. Konzeptioneller Entwurf Im entsprechenden Einsatzgebiet der DB wird ein Ausschnitt aus der Realität in einer sogenannten „Miniwelt“ abgebildet. Dies mündet in der Regel in ein ER-Diagramm, welches die Daten der DB und ihre Beziehungen untereinander abbildet. Dieser konzeptionelle Entwurf ist noch völlig unabhängig vom später zu wählenden Datenbankmodell. Logischer Entwurf Der logische Entwurf hängt stark mit dem gewählten Datenbankmodell ab. Wir haben im Unterricht das relationale Datenbankmodell kennen gelernt. Der logische Entwurf beinhaltete daher die Umsetzung des ER-Modells in Relationenschemata. Vor der Implementierung werden diese noch optimiert (Normalisierungsprozess). Klasse / Kurs: Thema / LS: Datum: DVT LK13.1 2014/2015 Physischer Entwurf Hier wird die konkrete Speicherung der Daten auf verschiedenen Datenträgern und die Zugriffsverwaltung für verschiedene Benutzergruppen festgelegt. Für uns ist dieser Entwicklungsschritt nicht relevant, da sich das DBMS (z.B. MS-Access) um diese Punkte kümmert. Implementierung und Erprobung Eine konkrete Implementierung der zuvor entworfenen Relationen haben Sie im Unterricht in dem DBMS MS-Access durchgeführt. Nutzung des Systems Jede DB ist mehr als nur ein Datenspeicher. Um die Daten nutzbringend verwenden zu können, sind Abfragen essentiell. Mit Hilfe von Abfragen können ausgewählte Teile des Datenbestandes miteinander verknüpft und sichtbar gemacht werden. Abfragen in MS-Access Für Abfragen steht in MS-Access ein leistungsstarker Abfrageeditor zur Verfügung. Wir verwenden als Datenbasis die DB der fiktiven Firma Nordwind GmbH. Sie finden das ER-Modell und die vollständigen Relationenschemata im Anhang dieser Unterlagen. Ihre Lehrkraft wird ihnen nun eine Einführung in die Erstellung von Abfragen in MS-Access geben. Die Erstellung von Abfragen in Access ist nicht abiturrelevant, soll aber als Motivation und Einführung in Abfragen mit der Abfragesprache SQL dienen. Folgende Abfragen werden in der Lehrerpräsentation erstellt: 1. Gib die Tabelle Artikel aus. SQL-Anweisung Klasse / Kurs: Thema / LS: Datum: DVT LK13.1 2014/2015 2. Gib die Artikel mit Artikelname und Einzelpreis aus. SQL-Anweisung 3. Gib die Artikel mit Artikelname und Einzelpreis aus, deren Einzelpreis kleiner als 10 DM ist. SQL-Anweisung 4. Gib alle Auslaufartikel aus. SQL-Anweisung 5. Gib den Firmennamen aller Lieferanten aus, die Auslaufartikel liefern. SQL-Anweisung Klasse / Kurs: Thema / LS: Datum: DVT LK13.1 2014/2015 6. Gib alle Artikel aus, die der Lieferant „Leka Trading“ liefert. SQL-Anweisung 7. Gib die Anzahl der unterschiedlichen Artikel im Lager aus. SQL-Anweisung Sie haben nun einige Anweisungen in MS-Access erstellt und sich die SQL-Anweisungen hierzu notiert. Sie können anhand dieser Beispiele schon die Grundstruktur einer SQLAbfrage erkennen. Grundstruktur SQL-Abfrage Klasse / Kurs: Thema / LS: Datum: DVT LK13.1 2014/2015 SQL-Tutorial Unter der Internetadresse http://www.imoodle.de/sqltutorial/index.html finden Sie ein interaktives SQL-Tutorial. Dieses ist aus Lektionen und Übungen aufgebaut. In den Lektionen werden die theoretischen Grundlagen zur Datenbank-Abfragesprache SQL vermittelt, in den Übungen können Sie die neu erworbenen Kenntnisse zum Einsatz bringen. Hierzu werden verschiedene Datenbanken zur Verfügung gestellt, an welche über das Webinterface Abfragen in SQL gestellt werden können. Im Anhang finden Sie Beschreibungen aller verwendeten Datenbanken. Sie haben für die Erledigung des Tutorials Zeit bis einschließlich 28.11.2014. Sie sollten sich daher einen Zeitplan erstellen! Lektion 1 Gelesen Übung 1 Bearbeitet Lektion 2 Gelesen Übung 2 Bearbeitet Lektion 3 Gelesen Übung 3 Bearbeitet Lektion 4 Gelesen Übung 4 Bearbeitet Lektion 5 Gelesen Übung 5 Bearbeitet Klasse / Kurs: Thema / LS: Übung 7 Datum: DVT LK13.1 2014/2015 Bearbeitet Anhang Die CIA-Datenbank Die Datenbank enthält einige Daten aus dem World-Factbook der amerikanischen Central Intelligence Agency. Relationen cia (Name, Region, Fläche, BIP, Einwohner) Die WMTitel-Datenbank Die Datenbank enthält einige Daten zu den Formel 1 Weltmeistern. Relationen WMTitel (Saison, Fahrerweltmeister, KonstrukteursWM, WM_Punkte, Team_Punkte) Klasse / Kurs: Thema / LS: Datum: DVT LK13.1 2014/2015 Die Datenbank Schule Relationen Schueler (SNr, Nachname, Vorname, Geburtsdatum, StrasseNr, PLZ, Ort) Belegt (SNr, KursNr, Punkte) Kurs (KursNr, Fach, Thema, Art, Halbjahr, Stunden) Klasse / Kurs: Thema / LS: Datum: DVT LK13.1 2014/2015 Die Datenbank Busunternehmen Die Datenbank modelliert ein Busunternehmen. Relationen Fahrer (PersonalNr, Name, Vorname, StraßeNr, PLZ, Ort, Telefon) Fahrt (FahrtNr, Kennzeichen#, PersonalNr#, Datum, Preis, Dauer, Reisestart, Reiseziel) Kunde (KundenNr, Name, Vorname, StraßeNr, PLZ, Ort, Telefon, Stammkunde) Bus (Kennzeichen, Bustyp, Baujahr, Sitzplätze) Bucht (FahrtNr, KundenNr, GebuchtePlätze) Klasse / Kurs: Thema / LS: Datum: DVT LK13.1 2014/2015 Die Datenbank Nordwind Datenbank der fiktiven Firma Nordwind GmbH. Das nachfolgende ER-Diagramm enthält zur besseren Übersichtlichkeit nur die wichtigsten Attribute. Relationen Lieferant (LieferantenNr, Firma, Kontaktperson, Position, Straße, Ort, Region, PLZ, Land, Telefon, Telefax, Homepage) Kunde (KundenCode, Firma, Kontaktperson, Position, Straße, Ort, Region, PLZ, Land, Telefon, Telefax) Versandfirma (FirmenNr, Firma, Telefon) Personal (PersonalNr, Nachname, Vorname, Position, Anrede, Geburtsdatum, Einstellung, Straße, Ort, Region, PLZ, Land, TelefonPrivat, DurchwahlBüro, Bemerkungen, Vorgesetzter) Kategorie (KategorieNr, Kategoriename, Beschreibung) Artikel (ArtikelNr, Artikelname, LieferantenNr#, KategorieNr#, Liefereinheit, Einzelpreis, Lagerbestand, BestellteEinheiten, Mindestbestand, Auslaufartikel) Bestellung (BestellNr, KundenCode#, PersonalNr#, Bestelldatum, Lieferdatum, Versanddatum, FirmenNr#, Frachtkosten, Empfänger, Straße, Ort, Region, PLZ, Bestimmungsland) Bestelldetails (BestellNr, ArtikelNr, Einzelpreis, Anzahl, Rabatt)