Modul 100 Gino Colombo 31.03.2017 Modul 100.

Slides:



Advertisements
Ähnliche Präsentationen
Object Relational Mapping
Advertisements

ER-Datenmodell und Abfragen in SQL
Datenbankdesign mit ACCESS.
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
spezielle Nutzersichten formale Ebene (deskriptive Regeln)
MySQL.
Bauinformatik II Softwareanwendungen 1
Systemüberblick Beispiele: Microsoft Access Oracle Ingres Informix
SendEplanung Datenbank
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/7
SQL als Abfragesprache
SQL als Abfragesprache
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
IS: Datenbanken, © Till Hänisch 2000 CREATE TABLE Syntax: CREATE TABLE name ( coldef [, coldef] [, tableconstraints] ) coldef := name type [länge], [[NOT]NULL],
Otto-von-Guericke-Universität MagdeburgGamal Kassem Übung 7 Reports mit Datenbankzugriff.
Datenbanken Wenn du weiter willst, dann klicke
SQL 2 Order by null Aggregatfunktionen group by Join subselect.
Datenintegrität Referentielle Integrität create table
Einführung Dateisystem <-> Datenbanksystem
Abfragen – Tipps und Tricks Buch S102ff (Informatik I, Oldenbourg-Verlag) Nach einer Vorlage von Dieter Bergmann.
2.2 Definition eines Datenbankschemas (SQL-DDL)
SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum.
... und alles was dazugehört
Datenbankentwicklung IV-LK
SQL PHP und MySQL Referat von Katharina Stracke und Carina Berning
Datenbanken Mehr als Tabellen.
Datenbankentwicklung IV-LK
Datenbanken Mehr als Tabellen. Datenbank Abfragen mit SQL: Eine Tabelle filtern Tabellen realer Datenbanken können sehr viele Informationen speichern:
Relationale Datenbanken III
Die Grundterminologie
Datenbanken?.
Datenbank.
Access 2000 Willkommen im Access-Kurs Oliver Mochmann.
Betrieb von Datenbanken Marco Skulschus & Marcus Wiederstein Datenmanipulation Lehrbuch, Kapitel 4.
Datenbanken Dantenbanksystem Data Base System Datenbasis (Daten)
SQL Überblick Abfragen aus einer Tabelle
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #4 SQL (Teil 1)
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #7 SQL (Teil 2)
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
Vorlesung #4 SQL (Teil 1).
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #6 SQL (Teil 1)
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #7 SQL (Teil 4)
WS 2013/14 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #5 SQL (Teil 2)
WS 2007/08 Datenbanksysteme Mi 17:00 – 18:30 R Vorlesung #5 SQL (Teil 2)
Allgemeines zu Datenbanken
Befehle in SQL Erläuterungen.
(D.h. „Hallo MausFans!“ auf Japanisch).
Datenbanksysteme für hörer anderer Fachrichtungen
Einführung in Datenbankmodellierung und SQL
Freiwillige Feuerwehr der Stadt Perg
WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R Vorlesung #5 SQL (Teil 2)
Aggregatsfunktion SQL = Structured Query Language.
1 Gruppierung, Aggregierung und Sortierung (2) Abarbeitungsmodell bei Gruppierung: Werte from- und where-Klauseln aus wie bisher (Bildung von Kreuzprodukt.
Das relationale Modell
Aggregatsfunktion mit Group by und having SQL = Structured Query Language.
Verdichten von Daten mit Gruppenfunktionen
Structured Query Language
Einführung Dateisystem <-> Datenbanksystem
WS 2014/15 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #6 SQL (Teil 3)
Datenbank für Skriptenverkauf
PHPmyadmin Maya Kindler 6c.
WS 2014/15 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #9 SQL Zusammenfassung.
Datenbanken abfragen mit SQL
SQL Basics Schulung –
Abfragen Wiederholung Manuel Friedrich Schiller-Gymnasium Hof.
Sprachumfang von SQL Vier Kategorien DDL (Data Definition Language)
Vorlesung #4 Relationales Kalkül und SQL (Teil 1)
Vorlesung #6 SQL (Teil 3).
2.3 Gruppierte Datensätze
(Structured Query Language)
 Präsentation transkript:

Modul 100 Gino Colombo 31.03.2017 Modul 100

Nachrichten Jegliche Meldungen. Die von uns wahrgenommen werden, sind Nachrichten 31.03.2017 Modul 100

Beispiel einer Nachricht 31.03.2017 Modul 100

Information Nachrichten mit Neuigkeitswert. Wissen, welches nützlich ist. Wissen, welches verwendet werden kann 31.03.2017 Modul 100

Redundanzen Informationen, welche nicht erwünscht Informationen, welche doppelt vorhanden Grundsätzlich nicht erwünscht Für Fehlerkorrekturen aber nützlich 31.03.2017 Modul 100

Redundanz / Konsistenz Gleiche Daten sind mehrmals gespeichert. Solange die redundanten Daten den gleichen Inhalt aufweisen, sind sie konsistent. 31.03.2017 Modul 100

Daten Daten sind Nachrichten, die maschinell verarbeitet und gespeichert werden können. Daten für sich alleine stellen noch keine Information dar. 31.03.2017 Modul 100

Hausnummer / Alter 31.03.2017 Modul 100

Datenstrukturen Unstrukturierte Daten (Text) Schwach strukturierte Daten (Tabelle) Stark strukturierte Daten (Datenbank) 31.03.2017 Modul 100

Text Texte haben kaum eine Struktur und können maschinell schlecht verarbeitet werden. Texte haben dennoch Strukturelemente wie: Leerzeichen, Satzzeichen, Zeilenumbrüche 31.03.2017 Modul 100

Tabelle Metainformation Spalte Zeile, (Datensatz, Record, Tupel) Schnittpunkt, (Feld, Zelle) 31.03.2017 Modul 100

31.03.2017 Modul 100

Datenbanken Tabellen, welche untereinander in Beziehung stehen. Geeignet für Auswertungen Hierarchisch Relational Objektorientiert 31.03.2017 Modul 100

Hierarchische Datenbanken 31.03.2017 Modul 100

Hierarchisch 2 Ältestes Datenbank Modell PCR (Eltern Kinder Beziehung) Baumstruktur Wurzel Blätter Entspricht Dateisystemen IMS/DB von IBM XML 31.03.2017 Modul 100

Netzwerk Datenbanken Cobol Dataset Datenstruktur Diagramm Datenbeschreibungssprache 31.03.2017 Modul 100

Objektorientierte Datenbanken Modell der realen Welt abbilden Daten und Zugriff Abstrakter Datentyp ODBMS Objekt besteht aus beliebigen Datentypen 31.03.2017 Modul 100

Relationale Datenbanken 31.03.2017 Modul 100

Relational 2 F. Codd von IBM RDBMS Structured Query Language (SQL) Tupel Attribute Relationen (Relationale Algebra) Key 31.03.2017 Modul 100

Daten strukturieren Metainformationen Attribute Datentypen Dimension Wertebereich Reihenfolge Sichten 31.03.2017 Modul 100

Metainformationen Spaltenüberschrift Attributname Tag (HTML / XML) Schlüssel / Wert (bei INI Dateien) 31.03.2017 Modul 100

Attribute Namen für Spalten / Felder Aussagekräftig Ev. mit Präfix Gebunden an Datentyp Unikat 31.03.2017 Modul 100

Datentypen 1 Zeichen Zahlen Datum Logisch Bild Ton 31.03.2017 Modul 100

Datentypen 2 31.03.2017 Modul 100

Daten Sichten 31.03.2017 Modul 100

Dateien 31.03.2017 Modul 100

INI Datei 31.03.2017 Modul 100

Grafik Datei BMP GIF JPG JPEG PNG TIF 31.03.2017 Modul 100

Eigenschaften Pixel RGB (rot, grün, blau) 24 Bit Farbtiefe 3 * 8 Bit pro Farbe 16 Mio Farbnuancen 31.03.2017 Modul 100

Audio Datei Verlustfrei Verlustbehaftet WAV (PCM) AU Monkey‘s Audio LPAC FLAC AAC Verlustbehaftet mp3 31.03.2017 Modul 100

Video Datei 25 Bilder pro Sekunde Fernsehsignal 166 MBit / sec Komprimiert gespeichert Fileformat: .AVI .ASF .MPEG .RV 31.03.2017 Modul 100

Ausführbare Datei EXE COM DLL BAT CMD SCR PIF VBS ASP PHP RB JS CLASS 31.03.2017 Modul 100

Mengen Durchschnitt / UND Vereinigung / OR Differenz 31.03.2017 Modul 100

Durchschnitt / UND 31.03.2017 Modul 100

Vereinigung / OR 31.03.2017 Modul 100

Differenz 31.03.2017 Modul 100

Auswertungen mit Excel 31.03.2017 Modul 100

Filter 31.03.2017 Modul 100

Entity-Relationship-Modell Ausgangspunkt des ER-Modells ist der Begriff der Entität. Eine Entität ist ein individuelles und identifizierbares Exemplar von Dingen, Personen oder Begriffen der realen oder der Vorstellungswelt. Die Entität wird durch Attribute näher beschrieben. 31.03.2017 Modul 100

Beziehung 31.03.2017 Modul 100

Kardinalität 31.03.2017 Modul 100

1:1 31.03.2017 Modul 100

1:C 31.03.2017 Modul 100

1:M 31.03.2017 Modul 100

1:MC 31.03.2017 Modul 100

M:N 31.03.2017 Modul 100

NC:MC 31.03.2017 Modul 100

Beispiel 31.03.2017 Modul 100

Chen 31.03.2017 Modul 100

IDEF1X 31.03.2017 Modul 100

Martin / Krähenfuss 31.03.2017 Modul 100

UML 31.03.2017 Modul 100

31.03.2017 Modul 100

SQL (Structured Query Language) SQL ist 'die' Sprache, mit der die meisten relationalen Datenbanken erstellt, manipuliert und abgefragt werden. SQL ist eine so genannte 4GL (Fourth-Generation Language). Sie ist nichtprozedural, d. h. der Fragesteller stellt eine Frage, gibt aber keinen Algorithmus zur Lösung vor. In einer 3GL wie Java oder C# müsste er angeben, wie die Gesuchten Informationen gefunden werden können. 31.03.2017 Modul 100

Selektion 31.03.2017 Modul 100

Projektion 31.03.2017 Modul 100

Union 31.03.2017 Modul 100

Inner Join 31.03.2017 Modul 100

Beispiel 31.03.2017 Modul 100

Natural Join 31.03.2017 Modul 100

Left Outer Join = Left Join 31.03.2017 Modul 100

Right Outer Join = Right Join 31.03.2017 Modul 100

Data Manipulation Language SELECT INSERT INTO (Seite 32) UPDATE (Seite 33) DELETE (Seite 34) 31.03.2017 Modul 100

Insert INSERT INTO Ziel [(Feld1[, Feld2[, ...]])] [IN ExterneDatenbank] VALUES (Wert1 [, Wert2 [, ...]); 31.03.2017 Modul 100

Insert Beispiel INSERT INTO Versandfirmen (Firma, Telefon) VALUES ('Austrian Parcel', '01/507643-00'); 31.03.2017 Modul 100

Update UPDATE Ziel SET Feld1 = Wert1 [,Feld2 = Wert2] WHERE Kriterien; 31.03.2017 Modul 100

Update Beispiel UPDATE Bestellungen SET Frachtkosten = Frachtkosten * 1.03 WHERE Bestimmungsland = 'USA'; 31.03.2017 Modul 100

Delete DELETE [Tabelle.*] FROM Tabelle WHERE Kriterien; 31.03.2017 Modul 100

Delete Beispiel DELETE Personal.* FROM Personal WHERE Nachname = "Jones"; 31.03.2017 Modul 100

Platzhalter Jet SQL ANSI SQL Einzelzeichen: ? Mehrere Zeichen * 31.03.2017 Modul 100

Prädikate ALL DISTINCT DISTINCTROW TOP 31.03.2017 Modul 100

Sortieren Nach ID Nach Attribut Mit oder ohne Index Was ist ein Index? 31.03.2017 Modul 100

Klauseln / Operatoren Between Like AND OR NOT ORDER BY 31.03.2017 Modul 100

Indexierung Index sortiert nach Ortschaft Poststellen Ortschaft Nr Basel 5 Bern 3 Genf 2 Lausanne 1 St. Gallen 7 Thun 4 Zürich 6 Poststellen Nr PLZ Ortschaft 1 1000 Lausanne 2 1200 Genf 3 3000 Bern 4 3600 Thun 5 4000 Basel 6 8000 Zürich 7 9000 St. Gallen 31.03.2017 Modul 100

Vorteile der Indexierung Schneller Zugriff z.B. bei Abfragen und Sortierung Bespiel: für 210 = 1024 Sätze maximal 10 statt 1024 Zugriffe 31.03.2017 Modul 100

Nachteile der Indexierung Mehr Speicherplatz erforderlich redundante Daten Langsamere Mutationen 31.03.2017 Modul 100

Recordlocking Record Locks Eigenschaft zur Sperrung von Datensätzen in Access-Datenbanken (.mdb). 31.03.2017 Modul 100

Keine Sperre (Voreinstellung) Versuchen zwei Benutzer gleichzeitig, Änderungen am selben Datensatz zu speichern, so erscheint beim Benutzer, der den Datensatz als zweiter speichern wollte, eine Meldung. Er kann dann die Änderungen am Datensatz verwerfen, den Datensatz in die Zwischenablage kopieren oder die Änderungen des anderen Benutzers ersetzen. 31.03.2017 Modul 100

Sperrung bearbeiteter Datensätze Eine Seite von Datensätzen wird gesperrt, sobald ein Benutzer die Bearbeitung eines Feldes im Datensatz beginnt und bleibt gesperrt, bis er zu einem anderen Datensatz wechselt. 31.03.2017 Modul 100

Sperrung aller Datensätze Alle Datensätze der Tabelle/Abfrage werden gesperrt, während das Formular geöffnet ist. Die übrigen Benutzer können Datensätze lesen, aber nicht bearbeiten, hinzufügen oder löschen. 31.03.2017 Modul 100

Aggregatsfunktionen Avg (Mittelwert) Count (Anzahl eines Wertes bestimmen) First, Last (erster oder letztes Vorkommen) Min, Max (Minimum, Maximum ermitteln) Sum (Summe bilden) StDev, StDevP (Standradabweichung) Var, VarP (Varianz) 31.03.2017 Modul 100

Sum () SELECT SUM(GESAMT) AS GESAMT FROM RECHNUNG 31.03.2017 Modul 100

Count () SELECT COUNT(*) AS ANZAHL_GESAMT, COUNT(VORNAME) AS ANZAHL_EXISTIERENDE_VORNAMEN, COUNT(ALL VORNAME) AS MIT_ALL, COUNT(DISTINCT VORNAME) AS VERSCHIEDENE_VORNAMEN FROM ADRESSEN 31.03.2017 Modul 100

avg (), min (), max () SELECT AVG(GESAMT) AS DURCHSCHNITT, MIN(GESAMT) AS KLEINSTER_BETRAG, MAX(GESAMT) AS GROESSTER_BETRAG FROM RECHNUNG 31.03.2017 Modul 100

group by Zusammenfassungen berechnen. Jedes Feld, mit dem keine Berechnung stattfindet, sollte auch in der GROUP BY Klausel stehen. Es werden nur die Sätze zusammengefasst, die in den in der GROUP BY Bedingung angegebenen Feldern gleiche Werte haben. 31.03.2017 Modul 100

SELECT AUFTRAG, SUM(GESAMT) AS BETRAG FROM RECHNUNG GROUP BY AUFTRAG 31.03.2017 Modul 100

Group by mit mehreren Feldern Wenn zwei oder mehr Gruppierungsfelder angegeben werden, wird eine Summe jeweils gebildet, solange alle Gruppierungsfelder identisch sind. Im folgenden Beispiel werden die Aufträge noch getrennt summiert nach Auftragsnummer und Storno (1 oder 0) 31.03.2017 Modul 100

SELECT AUFTRAG, STORNO, SUM(GESAMT) AS BETRAG FROM RECHNUNG GROUP BY AUFTRAG, STORNO 31.03.2017 Modul 100

having SELECT AUFTRAG, COUNT(GESAMT) ANZAHL, SUM(GESAMT) SUMME FROM RECHNUNG GROUP BY AUFTRAG HAVING SUM(GESAMT) > 5000 31.03.2017 Modul 100

Order by SELECT VORNAME, FIRMA1 FROM ADRESSEN ORDER BY FIRMA1 /* Absteigend */ ORDER BY FIRMA1 DESCENDING 31.03.2017 Modul 100

SQL Unterabfragen Prädikate Any oder Some All Not Exists 31.03.2017 Modul 100

31.03.2017 Modul 100

SELECT * FROM Artikel WHERE Einzelpreis > ANY( SELECT Einzelpreis FROM Bestelldetails WHERE Rabatt >= .25); 31.03.2017 Modul 100

SELECT Nachname,Vorname,Position, Gehalt FROM Personal AS T1 WHERE Gehalt >= ( SELECT Avg(Gehalt) FROM Personal WHERE T1.Position = Personal.Position) Order by Position; 31.03.2017 Modul 100

Die Data Definition Language Create Table Constraint Klausel Primary Key Foreign Key Create Index Alter Table Create View 31.03.2017 Modul 100

Diagramme Linien Punkt Säulen Balken Kreis Ring 31.03.2017 Modul 100

Linien-Diagramm Liniendiagramme dienen zum Darstellen von Trends für Daten im Zeitverlauf. 31.03.2017 Modul 100

Anzahl von Y-Werten pro Punkt 1 Anzahl von Reihen Eine oder mehrere. 31.03.2017 Modul 100

Punkt-Diagramm Punktdiagramme verwenden Wertpunkte zur Darstellung der Daten 31.03.2017 Modul 100

Anzahl von Y-Werten pro Punkt 1 Anzahl von Reihen Eine oder mehrere. 31.03.2017 Modul 100

Säulen-Diagramm In Säulendiagrammen werden mithilfe einer Folge von Spalten Werte über Kategorien hinweg verglichen. 31.03.2017 Modul 100

Anzahl von Y-Werten pro Punkt 1 Anzahl von Reihen Eine oder mehrere 31.03.2017 Modul 100

Balken-Diagramm Balkendiagramme ermöglichen den Vergleich einzelner Elemente. Die Kategorien sind horizontal angeordnet, während die Werte vertikal angezeigt werden. Hierdurch wird dem Vergleich der Werte mehr Bedeutung beigemessen als der Zeit. 31.03.2017 Modul 100

Anzahl von Y-Werten pro Punkt 1 Anzahl von Reihen Eine oder mehrere 31.03.2017 Modul 100

Kreis- Diagramm Kreisdiagramme zeigen das Verhältnis einzelner Daten, die als Kreissegmente angezeigt werden, zu den Daten insgesamt. 31.03.2017 Modul 100

Anzahl von Y-Werten pro Punkt 1 Anzahl von Reihen 31.03.2017 Modul 100

Ring-Diagramm Das Ringdiagramm ähnelt einem Kreisdiagramm, außer dass sich in der Mitte eine Öffnung befindet. 31.03.2017 Modul 100

Anzahl von Y-Werten pro Punkt 1 Anzahl von Reihen 31.03.2017 Modul 100