1 / 12

Einführung in die Wirtschaftsinformatik

Einführung in die Wirtschaftsinformatik. Datenbankabfragen mit SQL und Datenbankarchitekturen. Dr. Axel Kalenborn. Die Datenbanksprache SQL.

evonne
Download Presentation

Einführung in die Wirtschaftsinformatik

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Einführung in die Wirtschaftsinformatik Datenbankabfragen mit SQL und Datenbankarchitekturen Dr. Axel Kalenborn

  2. Die Datenbanksprache SQL • SQL ist eine logische, mengenorientierte, nicht-prozedurale Sprache der 4. Generation. SQL ist standardisiert, plattformunabhängig und kann zur Beschreibung, Abfrage und Manipulation von Daten in relationalen Datenbanken genutzt werden. SQL Befehlsklassen • DDL (Data Definition Language): Mit den Befehlen dieser Klasse werden Datenstrukturen beschrieben, verändert oder gelöscht. • DML (Data Manipulation Language): Mit diesen Befehlen werden Abfragen und Veränderungen an der Datenbank durchgeführt. • DCL (Data Control Language): Diese Befehle dienen der Vergabe von Zugriffsrechten in einer Datenbank, die von mehreren Personen genutzt wird.

  3. DDL DCL DML CREATE TABLE GRANT SELECT* Tabellen erzeugen. Zugriffsrechte Tabellen abfragen. ALTER TABLE DELETE* gewährleisten. REVOKE Tabellenstruktur ändern. Zeilen einer Tabelle löschen DROP TABLE INSERT* Zugriffsrechte entziehen. Tabellen löschen. Zeilen in eine Tabelle CREATE INDEX einfügen. UPDATE* Tabellenindex anlegen. CREATE VIEW Daten einer Tabelle Virtuelle Tabelle erzeugen. verändern. RENAME Tabelle, Spalten umbenennen. * werden Behandelt SQL Befehlsklassen und Befehle

  4. Abfragen von Tabellen (SELECT) • SELECT ist der wichtigste SQL Befehl. Jede Anfrage an eine Datenbank beginnt mit SELECT. Die Techniken zur Abfrage von Datenbanken werden auch zu deren Veränderung mit DELETE, INSERT und UPDATE verwendet. • Der SELCT Befehl kann auf eine oder mehrere Tabellen angewendet werden. Das Ergebnis der Suche ist wieder eine Tabelle. Die Auswahl der Spalten für die Ergebnistabelle nennt man Projektion, die der Zeilen Selektion. Werden für eine Anfrage Daten aus mehreren Tabellen zusammengetragen, spricht man von einem Join.

  5. Tabelle Spalte 1 Spalte 2 Spalte 3 Zeile 1 Zeile 2 Zeile 3 Zeile 4 Zeile 5 Zeile 6 Zeile 7 Zeile 8 Kombiniert Selektion Projektion Projektion und Selektion

  6. Die Parameter SQL-SELECT Befehls Die Parameter SELECT [ Spalten | * ] FROM Tabelle(n) WHERE Bedingung ORDER BY Spalten [ ASC | DESC ] Erläuterungen zu den Parametern • Spalten: Spalten der Abfrage. • Tabelle: Zu welchen Tabellen gehören die Spalten • Bedingung: Welche Bedingungen müssen die Werte der Spalten erfüllen. • ODER BY: Wie sollen die Ergebnisse sortiert werden.

  7. SELECT FROM • SELECT • Einfache SELECT Anweisungen bestehen nur aus dem SELECT und FROM Teil. Sie beziehen sich immer auf alle Datensätze der Tabelle und bilden reine Projektionen, da die Zahl der einbezogenen Spalten begrenzt werden kann. • SELECT * FROM Kunden: Ausgabe aller Kunden mit allen Ausprägungen. • SELECT Name FROM Kunden: Ausgabe der Kundennamen mit allen Ausprägungen. • ORDER BY • SELECT Name, Vorname FROM Kunden ORDER BY Name: Ausgabe der Namen und Vornamen der Kunden mit allen Ausprägungen, sortiert nach Namen. • SELECT Name, Vorname FROM Kunden ORDER BY Name, Vorname DESC: Gibt es mehrere Kunden mit gleichem Namen, werden diese nach Vornamen, absteigend geordnet ausgegeben.

  8. SELECT FROM WHERE (AND, OR, NOT) • SELECT WHERE • Da sich die wenigsten Abfragen auf alle Zeilen der Tabelle beziehen, sondern meist gezielt nach einzelnen Zeilen gesucht werden soll, ist der WHERE Teil der SELECT Anweisung äußerst wichtig. Die WHERE Klausel bewirkt, daß nur die Datensätze in der Ergebnistabelle enthalten sind, die den gestellten Bedingungen genügen. • SELECT * FROM Kunden WHERE Plz = 54290: Kunden mit PLZ = 54290. • SELECT * FROM Kunden WHERE Plz = 54290 AND Name = "Speicher“: Kunden mit PLZ = 54290 und Namen = Speicher. • SELECT * FROM Kunden WHERE Ort = "Trier" OR Ort = "Konz“: Alle Kunden aus Trier oder Konz. • SELECT * FROM Kunden WHERE Ort = NOT "Trier“: Alle Kunden, die nicht aus Trier stammen.

  9. Joins Bislang wurden nur Daten aus einer Tabelle selektiert. SQL bietet jedoch auch die Möglichkeit, Daten verschiedene Tabellen miteinander zu kombinieren. Um die Daten sinnvoll miteinander kombinieren zu können, müssen wir die Tabellen anhand der Schlüsselfelder miteinander verbinden. Als erstes Beispiel sollen die Daten der Kundendatei mit der Auftragsdatei verbunden werden, um nur Kunden auszuwählen, die einen Auftrag vorliegen haben. SELECT * FROM Kunden, Auftrag WHERE Kunden.KundenNr=Auftrag.KundenNr Tabellen Kunden (KundenNr, Name, Vorname) Auftrag (AuftragsNr, KundenNr, ArtikelNr, Menge)

  10. INSERT DB konsistent DELETE DB konsistent UPDATE t DB inkonsistent t 0 1 Das Transaktionenkonzept • Unter einer Transaktion versteht man die Überführung einer Datenbank von einem konsistenten Zustand in einen neuen konsistenten Zustand. Während dieser Überführung werden Änderungen an einer oder an mehreren Tabellen vorgenommen. Wieviele und welche Änderungsfolgen eine Transaktion bilden, ist nur von der spezifischen Anwendung selbst abhängig. Der Ablauf einer Transaktion: • Ist eine Transaktion beendet, wird sie mit dem Befehl COMMIT WORK gesichert oder durch den Befehl ROLLBACK WORK rückgängig gemacht.

  11. Externes Modell Die Benutzersicht auf die Daten. Internes Modell Physikalische Speicheraspekte der Datenbank. Diese sind für den Benutzer unerheblich und werden vor ihm verborgen. Konzeptionelles Modell Das konzeptionelle Modell dient als Vermittler zwischen beiden Modellen und beschreibt die Struktur der Daten. externes Modell n e l l o e i t s p e M z o n d o e k l l internes Modell Die 3-Ebenen Architektur

  12. Die 3-Ebenen Eine oder mehrere Applikationen bzw. Anwender verwenden unterschiedliche externe Sichten. Die externen Sichten setzten auf dem logische Relationenmodell (konzeptionelle Sicht) auf, das die Vermittlung zum internen Schema und zur physischen Datenbank übernimmt. Benutzer Appli - Appli - Benutzer Benutzer kationen kationen Externe Sichten Externe Sichten Appli - kationen (Subschema) (Subschema) Logisches Relationenmodell Internes Schema Physische Datenbank

More Related