Ein wesentliches, charakteristisches Merkmal aller Datenbankmanagement



Ähnliche Dokumente
stadtlandfluss.mdb Weitere Access-Beispieldatenbank

Datenbanken Microsoft Access 2010

MS Access 2010 Kompakt

4. BEZIEHUNGEN ZWISCHEN TABELLEN

1 Mathematische Grundlagen

Relationale Datenbanken: eine anwendungsorientierte Einführung

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

Auswahlabfragen mit ACCESS

Datenbanken Kapitel 2

Informatik 12 Datenbanken SQL-Einführung

Im Original veränderbare Word-Dateien

Abfragen: Grundbausteine

Allgemeines zu Datenbanken

ACCESS das Datenbankprogramm. (Einführung) DI (FH) Levent Öztürk

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Access [basics] Rechnen in Berichten. Beispieldatenbank. Datensatzweise berechnen. Berechnung im Textfeld. Reporting in Berichten Rechnen in Berichten

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Access Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli inkl. zusätzlichem Übungsanhang ACC2010-UA

Beispiel des Zusammenführens der APV- Tabellen Stammdaten und Verlaufsdaten mithilfe von Access

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

1 BEDIENUNGSANLEITUNG

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

2.5.2 Primärschlüssel

Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Seite 1 von 5

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik

Kontakte Dorfstrasse 143 CH Kilchberg Telefon 01 / Telefax 01 / info@hp-engineering.com

Einführung in. Logische Schaltungen

Access 2000 und MS SQL Server im Teamwork

Erweiterungen Webportal

Mediator 9 - Lernprogramm

Anwendungshinweise zur Anwendung der Soziometrie

6. Benutzerdefinierte Zahlenformate

GSD-Radionik iradionics Android-App

Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Arbeiten mit Pivot-Tabellen

Access [basics] Gruppierungen in Abfragen. Beispieldatenbank. Abfragen gruppieren. Artikel pro Kategorie zählen

Handreichung zu Datenauswertungen im TILL Stand:

Lehrer: Einschreibemethoden

Datenexport aus JS - Software

4 INFORMATIONEN ABFRAGEN

Lieferschein Dorfstrasse 143 CH Kilchberg Telefon 01 / Telefax 01 / info@hp-engineering.com

Erweitertes Kalkulationsfenster

07. Kapitel: Abfragen erstellen Geschätzter Zeitaufwand: 45 Minuten

Erstellen der Barcode-Etiketten:

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Handbuch ECDL 2003 Professional Modul 3: Kommunikation Kalender freigeben und andere Kalender aufrufen

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten.

Waimea Phone Monitor. Handbuch. Anzeige von eingehenden Anrufen auf Telefonanlagen mit TAPI-Interface

Einführungskurs MOODLE Themen:

Änderungen im Vertrags-Manager

Integration verteilter Datenquellen in GIS-Datenbanken

Stammdatenanlage über den Einrichtungsassistenten

ecaros2 - Accountmanager

NTCS WIEDERHOLFAKTURA & SAMMELRECHNUNG 10/04/13. BMD Systemhaus GmbH, Steyr Vervielfältigung bedarf der ausdrücklichen Genehmigung durch BMD!

Nutzerhandbuch Zentrale Klassenverwaltung

Arbeiten mit UMLed und Delphi

Dokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser

MaklerManager Ergänzung zum Handbuch 2.0

FIS: Projektdaten auf den Internetseiten ausgeben

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Artenkataster. Hinweise zur Datenbereitstellung. Freie und Hansestadt Hamburg. IT Solutions GmbH. V e r s i o n

Kompetenzen und Aufgabenbeispiele Englisch Schreiben

Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien

Zahlen auf einen Blick

Einführung in das Arbeiten mit MS Excel. 1. Bearbeitungs

TESTEN SIE IHR KÖNNEN UND GEWINNEN SIE!

Webalizer HOWTO. Stand:

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

3. Neuen Newsbeitrag erstellen Klicken Sie auf das Datensatzsymbol mit dem +, damit Sie einen neuen Newsbeitrag erstellen können.

Programmteil Bautagebuch

1. Schritt: Export Datei im Fidelio erstellen

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

Vorabversion. Schulung am Homepage Administration und Pflege

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel für Mac. amac-buch Verlag

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

Wir arbeiten mit Zufallszahlen

Arcavis Backend - Invoice Baldegger+Sortec AG

Access Grundlagen für Anwender. Susanne Weber. 1. Ausgabe, 1. Aktualisierung, Juni 2013

1. EINLEITUNG 2. GLOBALE GRUPPEN Globale Gruppen anlegen

GEVITAS Farben-Reaktionstest

2. Welche Tipp-Wettbewerbe können getippt werden?

Word 2010 Schnellbausteine

Sie können diesen Service verwenden, um fast beliebig große Dateien auch über 2 GB zu versenden.

Kurzanleitung zur Bereitstellung von Sachverhalten und Lösungen zum Universitätsrepetitorium auf dem Server unirep.rewi.hu-berlin.

Erstellen und Bearbeiten von Inhalten (Assets)

Güte von Tests. die Wahrscheinlichkeit für den Fehler 2. Art bei der Testentscheidung, nämlich. falsch ist. Darauf haben wir bereits im Kapitel über

FH-SY Chapter Version 3 - FH-SY.NET - FAQ -

EMC SourceOne TM für Microsoft SharePoint 7.1 Archivsuche Kurzreferenz

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt

1. Die Signaturen auf den PDF-Dokumenten der Deutschen Rentenversicherung werden als ungültig ausgewiesen oder mit Gültigkeit unbekannt gekennzeichnet

Quelle: TU Dresden, Fakultät Informatik, Institut für Systemarchitektur, Professur für Datenbanken, Dr.-Ing. B. Keller

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software

Lacke. Farbe hat einen Namen: HORNBACH. Intelligentes Nummernsystem. Automatische Farbharmonien. Wunschfarbe online bestellen - So geht s:

Pflegeberichtseintrag erfassen. Inhalt. Frage: Antwort: 1. Voraussetzungen. Wie können (Pflege-) Berichtseinträge mit Vivendi Mobil erfasst werden?

Kurzanleitung zur Bedienung der Online-Bestandserhebung Badischer Chorverband.

Transkript:

Anfrageformulierung: Allgemeines Ein wesentliches, charakteristisches Merkmal aller Datenbankmanagement nkmanagement- systeme ist die Unterstützung einer (oder mehrerer) Anfragesprachen. Eine Anfrage ist ein Ausdruck dieser Sprache, der...... im Prinzip beliebig komplexe Suchkriterien ausdrücken kann.... sich auf eine oder mehrere Tabellen gleichzeitig beziehen kann.... als Antwort beliebig viele Datensätze oder auch nur Ja/Nein liefern kann.... Datensätze als Antwortmenge wieder in Tabellenform zurückgibt. Access bietet zwei grundsätzlich verschiedene Anfragesprachen, die zwei völlig unterschiedliche "Paradigmen" der Anfrageformulierung repräsentieren: räsentieren: graphisch-interaktiv: interaktiv: "Query-by by-example" " (QBE) textuell: "Structured Query Language" (SQL) SQL ist die am weitesten verbreitete Anfragesprache für relationale DB. SQL ist standardisiert und wird von allen kommerziellen DBMS "verstanden". Informationssysteme 1

Access-Anfragesprachen: Anfragesprachen: QBE-Stil in der Entwurfssicht Welche Welche Heim- Heimspiele hat hat Werder Werder spiele Bremen Bremen gewonnen?? Tabelle, aus der die Daten stammen Formulierung im QBE-Stil Stil: graphisch dargestellt interaktiv konstruiert Auswahlkriterien Access-Bezeichnung: ebenfalls Entwurfssicht Schema der Antworttabelle Informationssysteme 2

Access-Anfragesprachen: Anfragesprachen: SQL-Formulierung derselben Anfrage Welche Welche Heim- Heimspiele hat hat Werder Werder spiele Bremen Bremen gewonnen?? Schema der Antworttabelle dieselbe Anfrage im SQL-Stil Stil formuliert: textuell dargestellt entweder per Hand eingegeben oder automatisch er- zeugt Auswahlkriterien Tabelle, aus der die Daten stammen Informationssysteme 3

Access-Anfragesprachen: Anfragesprachen: Antworttabelle in Datenblattsicht Welche Welche Heim- Heimspiele hat hat Werder Werder spiele Bremen Bremen gewonnen?? zugehörige Antwort als Tabelle im Datenblattformat Informationssysteme 4

Access-Anfragesprachen: Anfragesprachen: Synchronisation beider Stile Änderungen in der Anfrageformulierung in einer Sicht werden automatisch an die andere Sicht weitergereicht: Synchronisation beider Darstellungen QBE-Ansicht SQL-Ansicht SELECT FROM WHERE Informationssysteme 5

Vordefinierte Anfragen als DB-Inhalte in Access In Access ist es möglich, Anfragen (bzw. Abfragen) in der DB zu speichern. Beim Öffnen einer vordefi- nierten Anfrage wird die Antworttabelle jedesmal neu generiert. vordefinierte Abfragen in der Bundesliga-DB wichtig: Nicht die Antworttabelle wird gespeichert, sondern nur der Anfrageentwurf. Informationssysteme 6

Bundesligatabelle als Antworttabelle auf eine Anfrage Die Bundesliga- Tabelle ist z.b. durch eine Anfrage in Access definiert. Alle Felder der Ant- worttabelle dieser Anfrage sind über mehrere Stufen aus den Ergebnissen in 'Spiele2002' errechnet worden. "abgeleitete Tabelle" Informationssysteme 7

Vordefinierte Anfragen in der Bundesliga-DB Antworttabellen auf vordefinierte Anfragen werden ganz ähnlich h wie "richtige" Tabellen behandelt. Insbesondere können sie selbst wieder zum z Konstruieren neuer Anfragen dienen: Unteranfragen In der Bundesliga-DB ergibt sich folgende Hierarchie von (Unter-)Anfragen: Tabelle1 Tabelle Tabelle2 So So komplex komplex kann kann das das werden werden abgeleitete Tabellen gespeicherte Tabellen Spiele Siege Unentschieden Unentschieden Niederlagen AnzahlSiege AnzahlUnentschieden AnzahlNiederlagen Spiele2002 Vereine2002 Informationssysteme 8

Spezielle Anfragen in Access: nur in SQL möglich Im Bundesliga-Beispiel Beispiel kommen einige vordefinierte Anfragen vor, die in der Entwurfssicht nicht darstellbar sind (d.h., die man nicht im QBE-Stil aus- drücken kann), z.b. Siege oder Spiele. Diese Anfragen lassen Sie nur in SQL mit textuellen Mitteln definieren. In diesen Beispielen fehlt jedesmal die Möglichkeit, zwei gleich strukturierte Antworttabellen "aneinander zu hängen" bzw. "zu vereinigen", z.b. Siege HeimSiege AuswärtsSiege SQL bietet dazu einen speziellen Vereinigungsoperator für Relationen: UNION Mehr zu den Möglichkeiten von SQL lernen Sie im nächsten Kapitel Informationssysteme 9

Access-Pragmatik: Anfrageformulierung in der Entwurfssicht: in der Datenblattansicht: 1 Wechseln in die alte Datenblattsicht (vor Entwurfsänderung) 2 Abspeichern eines Anfrageentwurfs 12 Ausführen der Anfrage, d.h. Wechsel in die neue Datenblattansicht 1 Wechseln in die Entwurfssicht 17 Suchen mittels "pattern matching" im Datenblatt im Menü zu diesem Punkt: SQL-Sicht Sicht als dritte Alternative Informationssysteme 10

Zustandsänderungen: Allgemeines "Schreibende" Zugriffe auf eine Datenbank... führen stets zu Zustandsübergängen der DB. finden stets unter Kontrolle des DBMS statt. drei grundsätzliche Arten von Änderungszugriffen: Einfügungen neuer Datensätze in eine Tabelle (engl.: "to insert") Löschungen existierender Datensätze aus einer Tabelle (engl.: "to delete") Modifikationen einzelner Felder bestimmter Datensätze (engl.: "to update" " oder "to modify") Einfügungen und Modifikationen werden nur akzeptiert (vom DBMS), D wenn die vereinbarten Datentypen der Felder im Schema zu den Datentypen D der Werte in den neuen/modifizierten Datensätzen "passen". Vorsicht Der englische Begriff "update" wird manchmal für Modifikationen, manchmal aber auch für beliebige Änderungen verwendet. Informationssysteme 11

Änderungen in Access: direkt im Datenblatt in Access: individuelle Änderungen von Datensätzen können direkt im Datenblatt vor- genommen werden (nur bei Tabellen, nicht bei Antworten) falscher Datentyp DBMS-Kontrolle Kontrolle: Einfügungen: beim Abspeichern Löschungen: Bestätigung gefor- dert Modifikationen: Datentypkontrolle komplexe Änderungen: später (Aktionsabfragen) Informationssysteme 12

2. Beispieldatenbank: "Stadt-Land Land-Fluss" Weitere Access-Beispieldatenbank Beispieldatenbank,, die in der Vorlesung verwendet wird und zu Übungszwecken allen Teilnehmern zur Verfügung steht (siehe Vorlesungsseiten im Web). stadtlandfluss2000.mdb Datenbank mit grundlegenden Informationen zur Geographie Deutschlands: wichtigste Städte und Flüsse (z.b. alle deutschen Städte über 50000 Einwohner) alle Bundesländer und Regierungsbezirke zahlreiche Informationen zum geographischen Zusammenhang dieser r Objekte (z.b. In welchem Land liegt Bonn? Welche Nebenflüsse hat der Rhein?) DB wird ständig erweitert - eigene Beiträge willkommen Ziel dieser "Investition": Gelegenheit zum Üben korrekter Anfrageformulierung anhand einer r hin- reichend großen Datenmenge aus realistischen Fakten von allg.. Interesse. Wird im ersten Teil der Vorlesung und in den Übungen verwendet. Informationssysteme 13

Tabellen in der StadtLandFluss-Datenbank Das Schema dieser Beispiel-DB enthält zahlreiche Tabellen, aber nur wenige vor- definierte Anfragen. Aber es eignet sich hervorragend zum Üben im Formulieren eigener Anfragen Informationssysteme 14

StadtLandFluss-Datenbank: Nebeneffekt Können Sie all diesen deutschen Städten ihre Namen zuordnen? Deutschland Erkennen Sie in dieser Karte alle 16 Bundes- länder? Wenn nicht, dann nutzen Sie die Arbeit mit der SLF-DB auch zum Verbessern Ihrer geographischen Grund- Kenntnisse Informationssysteme 15

SLF-Datenbank: Objektklassen und Beziehungen hauptstadt_von nachbarland_von Land Stadt stadt_in_land fluss_durch_land Kommt Kommt man man auf auf so so eine eine Weise Weise zu zu einem einem "guten" "guten" Tabellenentwurf Tabellenentwurf?? fluss_entspringt_in_land stadt_an_fluss Fluss quellfluss_von nebenfluss_von Informationssysteme 16

Verknüpfen von Tabellen über "gleichartige" Felder (beinahe) wichtigste Technik der Anfrageformulierung: Verknüpfen von Tabellen über Felder mit gleichem Felddatentyp im QBE-Stil (d.h. in der Entwurfssicht): Erzeugen von Verbindungslinien zwischen Feldern durch "Drag and Drop" oder selbstständig durch Access stadt ID Kfz Name Einwohner stadt_in_land Name Land hauptstadt_von_land Bundesland Hauptstadt automatisch von Access erstellt wegen Namens- gleichheit der Felder per Hand zu erstellen wegen gleichem Typ und gleicher Bedeutung Informationssysteme 17

Verknüpfungen: implizite Antworttabelle stadt ID Kfz Name Einwohner stadt_in_land Name Land hauptstadt_von_land Bundesland Hauptstadt Effekt der Verknüpfung: Bilden einer grossen "Produkttabelle" aus allen Feldern der verknüpften Tabellen ID Kfz stadt.name Einwohner stadt_in_land.name Land Bundesland Hauptstadt nötig wegen Namensgleichheit aber: : Nur Datensätze mit identischem Wert in verknüpften Feldern werden auf- genommen 1 B Berlin 3382 Berlin BE BE Berlin Informationssysteme 18

Verknüpfung in SQL-Stil: Stil: JOIN-Operation Operation im SQL-Stil Stil: : eigener Operator zum Verknüpfen von Tabellen Join Join (engl., auf Deutsch: "Verbund") diverse Varianten: INNER JOIN, LEFT JOIN, RIGHT JOIN genaue Beschäftigung damit in Kapitel 4 SELECT stadt.*, stadt.*, stadt_in_land.*, hauptstadt_von_land.* FROM FROM (stadt (stadt INNER INNER JOIN JOINstadt_in_land ON ON stadt.name = stadt_in_land.name) INNER INNER JOIN JOINhauptstadt_von_land ON ON stadt_in_land.land = hauptstadt_von_land.bundesland; Join-Bedingung: Namensgleichheit Join-Bedingung: von Hand wegen gleichem Typ Informationssysteme 19

Warum "Query by Example" "? stadt ID Kfz Name Einwohner stadt_in_land Name Land hauptstadt_von_land Bundesland Hauptstadt Bezeichnung "Query by example" (= "Anfrage durch Beispiel") stammt von der ursprünglichen Form dieser graphischen Sprache (aus den 1970er Jahren): Verknüpfung wurde definiert durch Verwenden identischer Beispiel- werte in zu verknüpfenden Feldern stadt_in_land.name Land ID Kfz stadt.name Einwohner Berlin BE Berlin Bundesland BE Hauptstadt Informationssysteme 20

Aufbau von Anfragen im QBE-Stil: Details Bezeichnung für solche Abfragen/Anfragen, die Antworttabellen liefern: Auswahlabfrage Feldname Tabellenname Feld: Tabelle: Sortierung: Anzeige: Kriterien: oder: Einwohner stadt Aufsteigend > 150 fest fest vorgegebene Sortierung Feld Feld soll soll angezeigt werden werden?? Auswahlkriterien für für anzuzeigende Feldwerte mehrere Kriterien für ein Feld mit Booleschen Operatoren verknüpft, z.b.: > 150 Und < 500 Informationssysteme 21

Aufbau von Anfragen im QBE-Stil: Konjunktion Kriterien für verschiedene Felder werden implizit konjunktiv verknüpft. Feld: Tabelle: Sortierung: Anzeige: Kriterien: oder: Einwohner stadt Aufsteigend > 150 Und < 500 Land stadt_in_land <> "BY" explizite Konjunktion Formulierung der dahinter stehenden Bedingung im SQL-Stil: Stil: WHERE stadt.einwohner > 150 150 AND AND stadt.einwohner < 500 500 AND AND stadt_in_land.land <> <> "BY" "BY" implizite Konjunktion Informationssysteme 22

Aufbau von Anfragen im QBE-Stil: Disjunktion In einer neuen Kriterienzeile können Alternativen (implizite Oder-Verknüpfungen) auch über mehrere Felder hinweg formuliert werden: Feld: Tabelle: Sortierung: Anzeige: Kriterien: oder: Einwohner stadt Aufsteigend > 150 Land stadt_in_land = "BY" = "NW" Formulierung der dahinter stehenden Bedingung im SQL-Stil: Stil: WHERE ( ( stadt.einwohner > 150 150 AND AND stadt_in_land.land <> <> "BY" "BY") ) OR OR (stadt_in_land.land <> <> "NW" "NW") ) implizite Disjunktion Informationssysteme 23