Datenbanksysteme Ein Datenbanksystem ist eine systematische und strukturierte Zusammenfassung von Daten eines Problembereiches (Datenbasis) einschließlich der zur Eingabe, Verwaltung, Auswertung und Ausgabe erforderlichen Software (Datenbankmanagementsystem, DBMS). Datenbank eigentliche _________ ________________________ Gesamtmenge der abgespeicherten Daten mit ihren Beziehungen und Beschreibungen Realisiert Erstellung der Datenstruktur Verwaltung der Daten (hinzufügen, löschen, sortieren, suchen...) Abfragen der Datenbank Zugriff auf die Daten (Zugriffsrechte, speichern, wiedergewinnen ...) Grundlegende Objekte des Datenbankmanagementsystems * ________ enthalten Struktur und Inhalt der eigentlichen Daten Daten pro Objekt: Zeile = DATENSATZ Merkmale der Objekte: Spalten = DATENFELD kurz FELD * ________ sind Bildschirmmasken als Hilfsmittel zur Dateneingabe und zur strukturierten Datenausgabe auf dem Bildschirm * ________ sind Hilfsmittel zur strukturierten Datenausgabe auf dem Drucker * ________ sind Hilfsmittel zur Selektion von Daten Abfragen – mit SQL - Ausführen der Abfrage mit - Abfrage speichern und Namen erteilen mit SQL-Anweisungen bestehen aus verschiedenen Klauseln, welche nach festen Regeln (vergleichbar mit einer Programmiersprache) zu schreiben sind und abgearbeitet werden. Wo schreibt man die SQL-Abfrage? Abfrage schreiben und über ! starten Wähle im ACCESS-Datenbankfenster Abfrage Neu Entwurfsansicht Tabelle schließen <Ansicht/SQL-Ansicht> oder RM in Titelzeile der Abfrage Regeln zur Eingabe von SQL-Anweisungen: Eine SQL-Anweisung kann in einer Zeile oder in mehreren Zeilen geschrieben werden. Die Anweisung wird mit ; abgeschlossen. SQL ignoriert Groß- und Kleinschreibung bei SQL-Schlüsselwörtern, Tabellen- und Spaltennamen, jedoch nicht bei Zellinhalten! Beispiel für eine SQL-Abfrage: SELECT * FROM buecher WHERE verlag = "Goldmann"; 582655758 SELECT wählt die Felder aus ( * steht für alle ) FROM wählt die Tabellen aus WHERE legt die Bedingungen fest Informatik * Dresden * Meißen 1[3] Speichern von SQL-Abfragen: Nach dem Schließen der Abfrage wird automatisch nach dem Speichern gefragt. Wähle einen sinnvollen Abfragenamen! Ergänzende Bemerkungen: Bedingungen: Attribut >, <, = ,< > Wert z.B. … WHERE preis > 1000; … WHERE name = ’Müller’; Mustersuche: Attribut LIKE * oder ?...; z.B. WHERE autor LIKE ’B*’; Bereichssuche: Attribut BETWEEN startwert AND endwert; z.B. kosten BETWEEN 10 AND 20; Elementsuche: Attribut IN (Elementaufzählung); schule IN ( ’Gymnasium’ ,’Grundschule ’ , ’Mittelschule’ ); Logische Verbindungen UND bzw. ODER: WHERE sachgebiet = ’Kinder ’ AND jahr<1970 AND (ort = ’München ’ OR ort = ’Stuttgart ’) Der Vergleichsoperator LIKE Zeichen Bedeutung Beispiel * beliebige Anzahl LIKE “K*“ Alle Namen, die mit K beginnen von Zeichen LIKE“[A-D]*“ Alle Namen mit den Anfangsbuchstaben A bis D LIKE“*[!AZ]“ Alle Namen, die nicht mit A oder Z enden ? ein beliebiges LIKE“???M“ vier Zeichen lang und viertes Zeichen muss M sein Zeichen LIKE“??S*“ dritter Buchstabe muss ein S sein # eine beliebige LIKE“#*“ Zeichenkette muss mit Ziffer beginnen, Rest beliebig Ziffer LIKE“####“ Zeichenketten mit vier Ziffern (vierstellige Nummer) Der IN-Operator IN (“Text1“;“Text2“; ...) Alle Felder, die einen der Texte enthalten IN (“Rostock“;“Wismar“) Logische Operatoren Logischer Operator AND OR NOT BETWEEN 582655758 Syntax Bedeutung Regel1 UND Regel2 Regel1 ODER Regel2 NICHT Regel ZWISCHEN Wert1 UND Wert2 Beide Regeln müssen erfüllt sein. Mindestens eine Regel muss erfüllt sein. Die Regel darf nicht erfüllt werden. Die Eingabe muss zwischen Wert1 und Wert2 liegen. Informatik * Dresden * Meißen 2[3] Grundübungen (Abfragen mit SQL biblio.mdb Lösung: bibliothek2.mdb: Wiederhole die Übungsaufgabe zum Suchen und Filtern, indem Du SQL-Anweisungen in ACCESS verwendest! Speichere die entsprechende SQL-Anfragen zu Vergleichszwecken auch ab z.B. Aufg. 1.1 Speichern: 1_1! 1. 1.1. Abfragen zu Spalten: SELECT spaltenattribute FROM tabelle; Suche aus der Tabelle buecher alle Autoren! [1597] 1.2. Ergänze die obere Abfrage mit der Anweisung SELECT DISTINCT …… ! Welche Aufgabe erfüllt der Distinct-Befehl? [ 1143] 2. Abfragen mit Bedingungen: Abfragen zu Spalten: SELECT spaltenattribute FROM tabelle WHERE bed; 2.1. Suche nach allen Büchern des Verlages Goldmann. [11] 2.2. Filtere aus der Tabelle buecher alle Bücher vom Verlag Insel! [21] 2.3 Filtere aus der Tabelle buecher alle Bücher vom Insel-Verlag, die unter dem Sachgebiet Kunst in Leipzig erschienen sind! [2] 2.4 Vom wem stammt das Buch "Anna gibt es noch" und welcher Verlag hat es wann herausgegeben? [1] 2.5 Filtere aus der Tabelle buecher alle Belletristik-Bücher, welche 1981 in Berlin erschienen sind! [2] 2.6 Filtere aus der Tabelle buecher alle Bücher aus dem Sachgebiet Kunst, die nach 1980 in einem mit M beginnenden Ort erschienen sind! [4] 2.7 Filtere alle Jugendbücher, die im Titel das Wort 'Gold' irgendwie enthalten! [4] 2.8 Filtere alle im Arena- oder Benziger-Verlag nach 1980 erschienenen Jugendbücher und sortiere sie nach dem Erscheinungsjahr (beginnend mit dem jüngsten Buch!) … ORDEB BY …; 2.9 Wie viele Kinderbücher von mit B beginnenden Autoren sind in den 60ger Jahren in München oder Stuttgart erschienen? Sortiere sie aufsteigend nach den Autoren! 3.1 Filtere alle Autoren mit X,Y, Z beginnend. 3.2 Ermittle alle Bücher, deren Titel mit Der, Die oder Das beginnen. 3.2.1 Finde alle Bücher, deren Titel nicht mit einem Buchstaben beginnen! 3.2.2 Ermittle alle Bücher aus Dresden, München oder Berlin! 4. Erstelle mindestens 5 eigene Abfragen, davon 3 komplexe Abfragen! 582655758 Informatik * Dresden * Meißen 3[3]