Datenbanksysteme Kapitel 5: SQL Data Manipulation Language
|
|
|
- Ernst Dresdner
- vor 9 Jahren
- Abrufe
Transkript
1 Datenbanksysteme Kapitel 5: SQL Data Manipulation Language Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Peter Chamoni Prof. Dr. Peter Chamoni - Datenbanksysteme - Wintersemester 2014/
2 Gliederung 1 Grundlagen - Datenbanksysteme 2 SQL Data Definition Language 3 Datenorganisation 4 Datenintegrität und Transaktionsverwaltung 5 SQL Data Manipulation Language 6 Neue Konzepte der Datenbanktechnologie Prof. Dr. Peter Chamoni Datenbanksysteme 2 2
3 Gliederung 5 SQL Data Manipulation Language 5.1 DML - Befehle für Mutationen 5.2 DML - Abfrage von Daten Prof. Dr. Peter Chamoni Datenbanksysteme 3 3
4 5.1 DML - Befehle für Mutationen Standardoperationen für Mutationen INSERT Einfügen neuer Tupel in eine Relation Einfügen von Zeilen in eine existierende Tabelle UPDATE Änderung von Tupeln einer Relation Ändern von Zeilen in einer existierenden Tabelle DELETE Löschen von Tupeln aus einer Relation Löschen von Zeilen aus einer existierenden Tabelle Prof. Dr. Peter Chamoni Datenbanksysteme 4 4
5 5.1 DML - Befehle für Mutationen Einfügen neuer Tupel in eine Relation (I) Syntax INSERT INTO <Tabelle >[(Spaltenliste)] VALUES (Auswahlliste); Relation Beispiel Pilot (PilotID, Nachname, Vorname, GKID) Fügen Sie in die Relation Pilot folgenden Personaldatensatz ein. Günter, Neumann, PilotID 4444 und GKID 69. INSERT INTO Pilot VALUES (4444, 'Neumann', 'Günter', 69); Prof. Dr. Peter Chamoni Datenbanksysteme 5 5
6 5.1 DML - Befehle für Mutationen Einfügen neuer Tupel in eine Relation (II) Syntax INSERT INTO <Tabellenname> [(Spaltenliste)] Anfrage; Relation Beispiel Pilot (PilotID, Nachname, Vorname, GKID) Fügen Sie in die Relation Pilot_Neu alle Piloten aus der Relation Pilot ein, die den Gehaltsklassen 60 oder 69 angehören. INSERT INTO Pilot_Neu SELECT * FROM Pilot WHERE (GKID = 60) OR (GKID = 69); Prof. Dr. Peter Chamoni Datenbanksysteme 6 6
7 5.1 DML - Befehle für Mutationen Ändern von Tupeln einer Relation Syntax UPDATE <Tabellenname> SET <Spalte = Spaltenausdruck>, [WHERE <Bedingung>]; Relation Pilot (PilotID, Nachname, Vorname, GKID) Beispiel Ändern Sie die Gehaltsklasse von Michael Meier (PilotID=3333) in 23. UPDATE Pilot SET GKID = 23 WHERE PilotID = 3333; Prof. Dr. Peter Chamoni Datenbanksysteme 7 7
8 5.1 DML - Befehle für Mutationen Löschen von Tupeln einer Relation Syntax DELETE FROM <Tabellenname> [WHERE <Bedingung>]; Relation Beispiel Pilot (PilotID, Nachname, Vorname, GKID) Löschen Sie das Tupel des Piloten Günter Neumann (PilotID=4444) aus der Relation Pilot. DELETE FROM Pilot WHERE PilotID = 4444; Prof. Dr. Peter Chamoni Datenbanksysteme 8 8
9 Gliederung 5 SQL Data Manipulation Language 5.1 DML - Befehle für Mutationen 5.2 DML - Abfrage von Daten Prof. Dr. Peter Chamoni Datenbanksysteme 9 9
10 SQL - Relationenalgebra Teil des Relationalen Modells - Definition von Operationen mit 1 bzw. 2 Eingabetabellen sowie 1 Ausgabetabelle Operationen über 1 Tabelle - Selektion Auswahl bestimmter Zeilen einer Tabelle - Projektion Auswahl bestimmter Spalten einer Tabelle Operationen über 2 Tabellen - Kartesisches Produkt - Verbund / Join - Natürlicher Verbund - Mengenoperationen (Voraussetzung: Gleichförmigkeit der verknüpften Tabellen) Prof. Dr. Peter Chamoni Datenbanksysteme 10 10
11 Optional Notwendig 5.2 DML Abfrage von Daten Vereinfachtes Standardabfrageschema SELECT * Attributliste FROM Tab 1, Tab 2,, Tab n Projektion / Attributauswahl Kartesisches Produkt / Join WHERE GROUP BY HAVING Bedingung Attributliste Bedingung Selektion einzelner Tupel Bildung von Tupelgruppen, Aggregation, Selektion von Tupelgruppen ORDER BY Attributliste ASC DESC Sortierung Prof. Dr. Peter Chamoni Datenbanksysteme 11
12 Verarbeitung einer Datenbankabfrage (1) Prof. Dr. Peter Chamoni Datenbanksysteme 12
13 Verarbeitung einer Datenbankabfrage (2) 1. Alle in der Tabellenliste angegebenen Relationen werden über das kartesische Produkt miteinander verknüpft. 2. Aus dieser verknüpften Relation werden die Tupel ausgewählt, die die angegebene WHERE-Bedingung erfüllen. 3. Gemäß der Attributliste am Anfang des SELECT-Befehls wird auf das bisherige Resultat eine Projektion auf die gegebenen Attribute vorgenommen. 4. Nun wird eine Gruppierung gemäß der GROUP-BY-Klausel durchgeführt. Eine Gruppierung fasst dabei mehrere Tupel zu einem Ergebnistupel zusammen, so dass die Ergebnisrelation ggf. weniger Tupel enthält. 5. Eine nachfolgende HAVING-Klausel führt jetzt auf das Ergebnis der Gruppierung nochmals eine Restriktion auf bestimmte Tupel durch. 6. Die Ergebnisrelation wird nach den Vorgaben in der Ordnungsliste der ORDER-BY- Klausel sortiert. Prof. Dr. Peter Chamoni Datenbanksysteme 13 13
14 Abfragen über mehrere Tabellen Mengenoperationen Voraussetzung: Gleichförmigkeit der verknüpften Tabellen Gleiche Anzahl und gleicher Datentyp der Attribute Verbund von Tabellen (JOIN) keine Voraussetzung Prof. Dr. Peter Chamoni Datenbanksysteme 14 14
15 Abfragen über mehrere Tabellen - Mengenoperatoren Mengenoperatoren Mehrere SELECT-Befehle können durch Mengenoperatoren miteinander verknüpft werden: UNION (Vereinigung) INTERSECT (Durchschnitt) EXCEPT (Differenz) Prof. Dr. Peter Chamoni Datenbanksysteme 15 15
16 Mengenoperatoren UNION Syntax Beispiel SELECT * FROM <Tabellenname1> UNION SELECT * FROM <Tabellenname2>; Stellen Sie die Vereinigungsmenge von Flug und Flug2 dar. SELECT * FROM Flug UNION SELECT * FROM Flug2; Ergebnisrelation Flug Flug 2 Prof. Dr. Peter Chamoni Datenbanksysteme 16 16
17 Mengenoperatoren EXCEPT Syntax Beispiel SELECT * FROM <Tabellenname1> EXCEPT SELECT * FROM <Tabellenname2>; Stellen Sie die Differenzmenge von Flug und Flug2 dar. SELECT * FROM Flug EXCEPT SELECT * FROM Flug2; Ergebnisrelation Flug \ Flug 2 In MS ACCESS und der Übungsdatenbank stehen die Mengenoperatoren INTERSECT und EXCEPT nicht zur Verfügung. Prof. Dr. Peter Chamoni Datenbanksysteme 17 17
18 Mengenoperatoren INTERSECT Syntax Beispiel SELECT * FROM <Tabellenname1> INTERSECT SELECT * FROM <Tabellenname2>; Stellen Sie die Durchschnittsmenge von Flug und Flug2 dar. SELECT * FROM Flug INTERSECT SELECT * FROM Flug2; Ergebnisrelation Flug Flug 2 In MS ACCESS und der Übungsdatenbank stehen die Mengenoperatoren INTERSECT und EXCEPT nicht zur Verfügung. Prof. Dr. Peter Chamoni Datenbanksysteme 18 18
19 Mengenoperatoren Ausgangsrelationen Flug Flug2 Ergebnisrelationen Flug Flug 2 Flug \ Flug 2 Flug Flug 2 Prof. Dr. Peter Chamoni Datenbanksysteme 19 19
20 Allgemeine Informationen zu diesem Abschnitt (I) Die nachfolgenden Beispiele beziehen sich auf folgendes relationale Datenmodell Prof. Dr. Peter Chamoni Datenbanksysteme 20
21 Abfragen über mehrere Tabellen Übersicht möglicher Verbundarten Inner-Join Equi-Join Theta-Join Natural-Join Left-Outer-Join Full-Outer-Join Right-Outer-Join Cross-Join Prof. Dr. Peter Chamoni Datenbanksysteme 21 21
22 Abfragen über mehrere Tabellen Cross-Join Cross-Join Beim Cross-Join wird das kartesische Produkt über zwei Relationen gebildet, d. h. jeder Datensatz der ersten Relation wird mit jedem Datensatz der zweiten Relation kombiniert. Hinweis Für den praktischen Einsatz ist diese Reinform der Verknüpfungsregel unbrauchbar, da keinerlei Beziehungen zwischen den Daten beachtet werden. Beispiel: Stellen Sie das kartesische Produkt über die Relationen Passagier und Buchung dar. SELECT * FROM Passagier, Buchung; Prof. Dr. Peter Chamoni Datenbanksysteme 22 22
23 Abfragen über mehrere Tabellen Inner-Join (I) Inner-Join (1) Beim Inner-Join (Equi-Join) wird das kartesische Produkt über zwei Relationen gebildet, verbunden mit der Prüfung, ob ein oder mehrere gemeinsame Attribute den gleichen Wert haben. (Vergleichsoperator = ) In der Relationenalgebra wird mit Verbund der innere Verbund bezeichnet! Beispiel Innerer Verbund zwischen den beiden Relationen Pilot und Gehaltsklasse. SELECT * FROM Pilot, Gehaltsklasse WHERE Pilot.GKID = Gehaltsklasse.GKID; Prof. Dr. Peter Chamoni Datenbanksysteme 23 23
24 Abfragen über mehrere Tabellen Inner-Join (II) Inner-Join (2) SELECT * FROM Pilot AS P, Gehaltsklasse AS G WHERE P.GKID = G.GKID; Umbenennung der Tabellen oder SELECT * Änderung der JOIN-Syntax FROM Pilot INNER JOIN Gehaltsklasse ON Pilot.GKID = Gehaltsklasse.GKID; oder SELECT * Änderung der JOIN-Syntax FROM Pilot JOIN Gehaltsklasse ON Pilot.GKID = Gehaltsklasse.GKID; Prof. Dr. Peter Chamoni Datenbanksysteme 24 24
25 Abfragen über mehrere Tabellen Inner-Join (III) Inner-Join (3) Beispiel Stellen Sie den inneren Verbund zwischen den Relationen Passagier und Flug dar. Relationen Passagier (PassID, Name, Vorname) Buchung ( PassID, FlugNr, Datum, Kategorie, Preis) Flug ( FlugNr, Datum, Gate, PilotID) SELECT P.PassID, Name, B.FlugNr, B.Datum, F.Gate FROM Passagier AS P, Buchung AS B, Flug AS F WHERE P.PassID = B.PassID AND B.FlugNr = F.FlugNr AND B.Datum = F.Datum; Prof. Dr. Peter Chamoni Datenbanksysteme 25 25
26 Abfragen über mehrere Tabellen Theta-Join Theta-Join Beim Theta-Join wird das kartesische Produkt über zwei Relationen gebildet, wobei für ein oder mehrere gemeinsame Attribute eine Bedingung gilt, für die ein beliebiger Vergleichsoperator verwendet werden kann. Beachte: Der Inner-Join ist somit ein Theta-Join, bei dem der Gleichheitsoperator in der Bedingung verwendet wird. Prof. Dr. Peter Chamoni Datenbanksysteme 26 26
27 Abfragen über mehrere Tabellen Natural-Join (I) Natural-Join (1) Der Natural-Join (Natürlicher Verbund) ist ein Inner-Join, bei dem die Duplikate von identischen Attributen eliminiert werden. Beispiel Relationen Stellen Sie den natürlichen Verbund zwischen den Relationen Flug und Flugstrecke her. Flug ( FlugNr, Datum, Gate, PilotID) Flugstrecke (FlugNr, Flugdauer, Abflugort, Ankunftsort) SELECT Flug.FlugNr, Datum, Gate, PilotID, Flugdauer, Abflugort, Ankunftsort FROM Flug, Flugstrecke WHERE Flug.FlugNr = Flugstrecke.FlugNr; Prof. Dr. Peter Chamoni Datenbanksysteme 27 27
28 Abfragen über mehrere Tabellen Natural-Join (II) Natural-Join (2) SELECT Flug.*, Flugdauer, Abflugort, Ankunftsort FROM Flug, Flugstrecke WHERE Flug.FlugNr = Flugstrecke.FlugNr; Beschreibung Ergebnisrelation! oder SELECT Flug.*, Flugdauer, Abflugort, Ankunftsort Änderung der JOIN-Syntax FROM Flug INNER JOIN Flugstrecke ON Flug.FlugNr = Flugstrecke.FlugNr; oder SELECT Flug.*, Flugdauer, Abflugort, Ankunftsort Änderung der JOIN-Syntax FROM Flug JOIN Flugstrecke ON Flug.FlugNr = Flugstrecke.FlugNr; Prof. Dr. Peter Chamoni Datenbanksysteme 28 28
29 Abfragen über mehrere Tabellen Natural-Join (III) Natural-Join (3) Beispiel Stellen Sie den natürlichen Verbund zwischen den Relationen Passagier und Flug dar. Relationen Passagier (PassID, Name, Vorname) Buchung ( PassID, FlugNr, Datum, Kategorie, Preis) Flug ( FlugNr, Datum, Gate, PilotID) SELECT P.PassID, Name, Vorname, B.FlugNr, B.Datum, Kategorie, Preis,Gate, PilotID FROM Passagier AS P, Buchung AS B, Flug AS F WHERE B.PassID = P.PassID AND B.FlugNr = F.FlugNr AND B.Datum = F.Datum; Prof. Dr. Peter Chamoni Datenbanksysteme 29 29
30 Abfragen über mehrere Tabellen Natural-Join (IV) Natural-Join (4) Fortsetzung des Beispiels Beispiel Stellen Sie den natürlichen Verbund zwischen den Relationen Passagier und Flug dar. Relationen Alternativ Passagier (PassID, Name, Vorname) Buchung ( PassID, FlugNr, Datum, Kategorie, Preis) Flug ( FlugNr, Datum, Gate, PilotID) Beschreibung Ergebnisrelation! SELECT P.*, B.*, F.* FROM Passagier AS P, Buchung AS B, Flug AS F WHERE B.PassID = P.PassID AND B.FlugNr = F.FlugNr AND B.Datum = F.Datum; Prof. Dr. Peter Chamoni Datenbanksysteme 30 30
31 Abfragen über mehrere Tabellen Left-Outer-Join Left-Outer-Join Beim Left-Outer-Join (Linke Inklusionsverknüpfung) werden von der ersten Relation alle Tupel in die Ergebnismenge aufgenommen. Von der zweiten Relation werden nur die dazugehörigen Tupel übernommen. Die Attributwerte der zweiten Relation bleiben leer (NULL), wenn kein entsprechendes Tupel vorhanden ist. Beispiel SELECT * FROM Pilot LEFT OUTER JOIN Gehaltsklasse ON Pilot.GKID = Gehaltsklasse.GKID; Prof. Dr. Peter Chamoni Datenbanksysteme 31 31
32 Abfragen über mehrere Tabellen Right-Outer-Join Right-Outer-Join Beim Right-Outer-Join (rechte Inklusionsverknüpfung) werden von der zweiten Relation alle Tupel in die Ergebnismenge aufgenommen. Von der ersten Relation werden nur die dazugehörigen Tupel übernommen. Die Attributwerte der ersten Relation bleiben leer (NULL), wenn kein entsprechendes Tupel vorhanden ist. Beispiel SELECT * FROM Pilot RIGHT OUTER JOIN Gehaltsklasse ON Pilot.GKID = Gehaltsklasse.GKID; Prof. Dr. Peter Chamoni Datenbanksysteme 32 32
33 Abfragen über mehrere Tabellen Full-Outer-Join Full-Outer-Join Der Full-Outer-Join ist eine Kombination aus dem Left- und dem Right-Outer-Join. Er kommt dem ursprünglichen Cross-Join am nächsten. Alle Datensätze beider Relationen werden in die Ergebnisrelation übernommen. Passen die Tupel beider Relationen lt. Vergleichsoperator zusammen, so werden diese verbunden. Das Ergebnis der Abfrage entspricht einer nicht normalisierten Speicherung aller Daten in einer Tabelle. Beispiel SELECT * FROM Pilot FULL OUTER JOIN Gehaltsklasse ON Pilot.GKID = Gehaltsklasse.GKID; Prof. Dr. Peter Chamoni Datenbanksysteme 33 33
34 Abfragen über mehrere Tabellen Self-Join Self-Join Der Self-Join (Eigen-Verbund) ist eine Verbundform, bei dem nicht zwei verschiedene Tabellen miteinander verbunden werden, sondern zweimal dieselbe. Beispiel Interpretieren Sie das Attribut Abflugort in der Relation Flug- strecke als Basis und stellen Sie die Basis jedes Fluges dar. SELECT A.*, B.Abflugort AS Basis FROM Flugstrecke AS A, Flugstrecke AS B WHERE A.FlugNr = B.FlugNr; Alternativ SELECT A.*, B.Abflugort AS Basis FROM Flugstrecke AS A JOIN Flugstrecke AS B ON A.FlugNr = B.FlugNr; Prof. Dr. Peter Chamoni Datenbanksysteme 34 34
35 Abfragen über mehrere Tabellen Anmerkungen (I) Ein Join ist und bleibt in Abhängigkeit von der Tabellengröße eine aufwendige Operation. Ist DB-Performance ein kritischer Faktor, so sollten die verwendeten Joins dahingehend untersucht werden, ob: sämtliche in den Kriterien (ON) verwendeten Spalten indiziert sind; der Join tatsächlich nötig ist und nicht aus reiner Bequemlichkeit einer weiteren Abfrage vorgezogen wird; die Tabellenreihenfolge optimal gewählt ist. Als Faustregel gilt: Immer mit der kleinsten Tabelle beginnen. Unterstützt das Datenbanksystem Unterabfragen, so kann es effizienter sein, statt der gesamten Tabelle nur eine durch Kriterien beschränkte Teilmenge der Datensätze im Join zu verwenden. Prof. Dr. Peter Chamoni Datenbanksysteme 35 35
36 Abfragen über mehrere Tabellen Anmerkungen (II) Join vs. View Wird eine komplexe Join-Abfrage ständig aufgerufen, empfiehlt sich eher der Einsatz von Views. Ein View kann durchaus auf einer beliebig komplexen SQL-Abfrage basieren. Er stellt das Ergebnis in Form einer Tabelle zur Verfügung. Vorteil: Das DBMS kann das Ergebnis dieser Abfrage u.u. cachen und somit beim zweiten Zugriff schneller zur Verfügung stellen als ein Join. Beim Lesezugriff auf einen View gibt es i.d.r. keine Probleme, hingegen sind Schreiboperationen mit Vorsicht auszuführen. Prof. Dr. Peter Chamoni Datenbanksysteme 36 36
Datenbanksysteme Kapitel 5: SQL Data Manipulation Language
Datenbanksysteme Kapitel 5: SQL Data Manipulation Language Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Peter Chamoni
Datenbanksysteme Kapitel 5: SQL - Grundlagen
Datenbanksysteme Kapitel 5: SQL - Grundlagen Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Prof. Peter Dr. Chamoni Peter
Datenbanksysteme Kapitel 5: SQL Grundlagen Teil 1
Datenbanksysteme Kapitel 5: SQL Grundlagen Teil 1 Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Prof. Dr. Dr. Peter Peter
Einführung in die Wirtschaftsinformatik Kapitel 4: Relationale Datenbanksprachen: SQL
Einführung in die Wirtschaftsinformatik Kapitel 4: Relationale Datenbanksprachen: SQL Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence
SQL als Zugriffssprache
SQL als Zugriffssprache Der Select Befehl: Aufbau Select- und From-Klausel Where-Klausel Group-By- und Having-Klausel Union Join-Verbindung Order-By-Klausel Der Update-Befehl Der Delete-Befehl Der Insert-Befehl
Datenbanksysteme SQL Grundlagen
Datenbanksysteme SQL Grundlagen Kapitel 5: SQL Übungsunterlagen Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Peter SQL
Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL
Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell Jetzt: -> Formulierung in DDL Daten-Definitionssprache (DDL) DDL ist Teil von SQL (Structured
SQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis.
SQL Lehr- und Forschungseinheit Datenbanken und Informationssysteme Ziele Grundlagen von SQL Beziehung zur relationalen Algebra SELECT, FROM, WHERE Joins ORDER BY Aggregatfunktionen Lehr- und Forschungseinheit
Abfragen (Queries, Subqueries)
Abfragen (Queries, Subqueries) Grundstruktur einer SQL-Abfrage (reine Projektion) SELECT [DISTINCT] {* Spaltenname [[AS] Aliasname ] Ausdruck} * ; Beispiele 1. Auswahl aller Spalten SELECT * ; 2. Auswahl
Wiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
ACCESS SQL ACCESS SQL
ACCESS SQL Datenbankabfragen mit der Query-Language ACCESS SQL Datenbankpraxis mit Access 34 Was ist SQL Structured Query Language Bestehend aus Datendefinitionssprache (DDL) Datenmanipulationssprache
insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle
Einführung in SQL insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle Quelle Wikipedia, 3.9.2015 SQL zur Kommunikation mit dem DBMS SQL ist
SQL Data Manipulation Language (DML) und Query Language (QL)
Innsbruck Information System University of Innsbruck School of Management Information Systems Universitätsstraße 15 6020 Innsbruck SQL Data Manipulation Language (DML) und Query Language (QL) Universität
Wiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
Übersicht der wichtigsten MySQL-Befehle
Übersicht der wichtigsten MySQL-Befehle 1. Arbeiten mit Datenbanken 1.1 Datenbank anlegen Eine Datenbank kann man wie folgt erstellen. CREATE DATABASE db_namen; 1.2 Existierende Datenbanken anzeigen Mit
Kapitel 6. Datenmalipulation (DML) d. h. insert, update, delete, select im Relationenmodell (in Oracle)
Kapitel 6 Datenmalipulation (DML) d. h. insert, update, delete, select im Relationenmodell (in Oracle) 1 Datenmanipulationssprache (DML) SQL Einfügen: Insert-Statement Ändern: Update-Statement Löschen:
ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de
08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren
Informationsmanagement u. Numerische Methoden
Fakultät Bauingenieurwesen Institut für Bauinformatik, Prof. Dr.-Ing. Raimar J. Scherer Informationsmanagement u. Numerische Methoden Relationale und Objekt-orientierte Datenstrukturen 6. Semester 2. Vorlesung:
3 Query Language (QL) Einfachste Abfrage Ordnen Gruppieren... 7
1 Data Definition Language (DDL)... 2 1.1 Tabellen erstellen... 2 1.1.1 Datentyp...... 2 1.1.2 Zusätze.... 2 1.2 Tabellen löschen... 2 1.3 Tabellen ändern (Spalten hinzufügen)... 2 1.4 Tabellen ändern
SQL-Sprachvielfalt. Peter Willadt (Ludwig-Erhard-Schule) SQL-Befehle / 47
SQL-Sprachvielfalt DML Data Manipulation Language: Daten einfügen, ändern und löschen DQL Data Query Language: Daten abfragen DDL Data Definition Language: Tabellen und andere Strukturelemente erzeugen,
Anwendungsentwicklung Datenbanken SQL. Stefan Goebel
Anwendungsentwicklung Datenbanken SQL Stefan Goebel SQL Structured Query Language strukturierte Abfragesprache von ANSI und ISO standardisiert deklarativ bedeutet was statt wie SQL beschreibt, welche Daten
[1] DBS-exercice
[1] DBS-exercice 1.11.14 Daten abfragen (SELECT) Wenn Sie die Möglichkeiten des SELECT-Befehls nutzen, müssen Sie diese Reihenfolge der einzelnen Befehlskomponenten einhalten: SELECT spaltenliste FROM
SQL. Komplexe Abfragen. SQL-Komplexe Abfragen. SQL-Komplexe Abfragen. Komplexe Abfragen verknüpfen mehrere Tabellen miteinander.
SQL Komplexe Abfragen Komplexe Abfragen verknüpfen mehrere Tabellen miteinander. Voraussetzung für das Verständnis ist die Beherrschung einfacher SELECT-Abfragen Die Möglichkeit, Tabellen zu verknüpfen,
Es geht also im die SQL Data Manipulation Language.
1 In diesem Abschnitt wollen wir uns mit den SQL Befehlen beschäftigen, mit denen wir Inhalte in Tabellen ( Zeilen) einfügen nach Tabelleninhalten suchen die Inhalte ändern und ggf. auch löschen können.
Rückblick. SQL bietet viele Möglichkeiten zur Anfrageformulierung
Rückblick SQL bietet viele Möglichkeiten zur Anfrageformulierung mathematische Funktionen (z.b. ABS(A) und SIGN(A)) Aggregatfunktionen (z.b. MIN(A) und SUM(A)) Boole sche Operatoren (AND, OR, EXCEPT) Verknüpfungen
Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 15
Vorwort 13 Kapitel 1 Einleitung 15 Kapitel 2 SQL-der Standard relationaler Datenbanken... 19 2.1 Die Geschichte 19 2.2 Die Bestandteile 20 2.3 Die Verarbeitung einer SQL-Anweisung 22 2.4 Die Struktur von
Oracle 10g Einführung
Kurs Oracle 10g Einführung Teil 5 Einführung Timo Meyer Administration von Oracle-Datenbanken Timo Meyer Sommersemester 2006 Seite 1 von 16 Seite 1 von 16 Agenda 1 Tabellen und Views erstellen 2 Indizes
Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort... 13
Auf einen Blick Vorwort... 13 Teil 1 Vorbereitung Kapitel 1 Einleitung... 17 Kapitel 2 SQL der Standard relationaler Datenbanken... 21 Kapitel 3 Die Beispieldatenbanken... 39 Teil 2 Abfrage und Bearbeitung
Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung... 15
Vorwort..................................................... 13 Kapitel 1 Einleitung.......................................... 15 Kapitel 2 SQL der Standard relationaler Datenbanken... 19 2.1 Die Geschichte................................
Microsoft Access 2010 SQL nutzen
Microsoft Access 2010 SQL nutzen Welche Bestellungen hat Kunde x aufgegeben? Welche Kunden haben noch nie bestellt? Wer hat welche Bestellungen von welchen Kunden aufgenommen? S(tructured)Q(uery)L(anguage)
Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort 13
Auf einen Blick Vorwort 13 Teil 1 Vorbereitung Kapitel 1 Einleitung 17 Kapitel 2 SQL - der Standard relationaler Datenbanken 21 Kapitel 3 Die Beispieldatenbanken 39 Teil 2 Abfrage und Bearbeitung Kapitel
WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)
Vorlesung #3 SQL (Teil 1) Fahrplan Wiederholung/Zusammenfassung Relationales Modell Relationale Algebra Relationenkalkül Geschichte der Sprache SQL SQL DDL (CREATE TABLE...) SQL DML (INSERT, UPDATE, DELETE)
Praktische SQL-Befehle
Praktische SQL-Befehle Datenbanksysteme I WiSe 2018/2019 Todor Ivanov DB1 WS2018 1 Praktische SQL-Befehle Nested Selects Inserts Updates Views Triggers Constraints Functions Voraussetzung: Laptop + MySQL/
SQL ist eine relational vollständige Datenbanksprache.
SQL-Abfragen 1. Einleitung SQL ist eine relational vollständige Datenbanksprache. SQL steht für Structured Query Language. Der englische Ausdruck Query steht für Abfrage. SQL wurde in den siebziger Jahren
1. Einleitung. SQL-Abfragen. 3. Das ERM der Übungsdatenbank. 2. Grundstruktur von SQL-Abfragen
1. Einleitung 9. Oktober 2012 SQL ist eine relational vollständige Datenbanksprache. SQL steht für Structured Query Language. Der englische Ausdruck Query steht für Abfrage. SQL wurde in den siebziger
Seminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle.
Seminar 2 SQL - DML(Data Manipulation Language) und DDL(Data Definition Language) Befehle. DML Befehle Aggregatfunktionen - werden auf eine Menge von Tupeln angewendet - Verdichtung einzelner Tupeln yu
Datenbanksysteme Kapitel 2: SQL Data Definition Language
Datenbanksysteme Kapitel 2: SQL Data Definition Language Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Peter Chamoni -
Datenmanipulation in SQL (1): Subselect:
Datenmanipulation in SQL (1): Unter Datenmanipulation wird sowohl der lesende Zugriff auf die Daten (Select Statement) als auch die Änderung von Daten (Insert, Delete, Update) subsummiert. Wir beginnen
Tabellen verknüpfen: Joins
SQL2-1 - Tabellen verknüpfen: Joins Bisher haben wir Tabellen mittels Unterabfragen verknüpft d. h. eine Spalte einer anderen Tabelle kann ein Selektionskriterium liefern. Wie kann man aber eine "echte"
SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)
SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans [email protected]
MySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben.
MySQL-Befehle 1. Einleitung In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. 2. Arbeiten mit Datenbanken 2.1 Datenbank anlegen Eine Datenbank kann man wie folgt
SQL: Weitere Funktionen
Vergleich auf Zeichenketten SQL: Weitere Funktionen LIKE ist ein Operator mit dem in Zeichenketten andere Zeichenketten gesucht werden; zwei reservierte Zeichen mit besonderer Bedeutung sind hier % (manchmal
Datenbankabfragen und Datenmanipulation
Datenbankabfragen und Datenmanipulation Datenbankabfragen auf einer Tabelle...1 SELECT Abfrage...1 Projektion...2 Wertausdrücke...3 Numerische Wertausdrücke...3 Zeichenkettenwertausdrücke...3 Datums und
Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten
Einführung in SQL Die Sprache SQL (Structured Query Language) ist eine Programmiersprache für relationale Datenbanksysteme, die auf dem ANSI-SQL-Standard beruht. SQL wird heute von fast jedem Datenbanksystem
Verbunde (Joins) und mengentheoretische Operationen in SQL
Verbunde (Joins) und mengentheoretische Operationen in SQL Ein Verbund (Join) verbindet zwei Tabellen Typischerweise wird die Verbindung durch Attribute hergestellt, die in beiden Tabellen existieren Mengentheoretische
Verbunde (Joins) und mengentheoretische Operationen in SQL
Verbunde (Joins) und mengentheoretische Operationen in SQL Ein Verbund (Join) verbindet zwei Tabellen Typischerweise wird die Verbindung durch Attribute hergestellt, die in beiden Tabellen existieren Mengentheoretische
Relationentheorie grundlegende Elemente
Relationentheorie grundlegende Elemente Symbol Bedeutung Entsprechung in SQL π AAAA Projektion SELECT σ F Selektion WHERE ρ Umbenennung RENAME; AS Natural Join NATURAL JOIN (nicht in MS SQL Server verwendbar)
SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:
SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In
Grundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich
Grundlagen von SQL Informatik 2, FS18 Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich Markus Dahinden 13.05.18 1 Grundlagen von SQL (Structured Query Language)
5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp
5/14/18 Grundlagen von SQL (Structured Query Language) Datenbanksprache Befehle Datenbanken und Tabellen erstellen/verändern Daten manipulieren (eingeben, ändern, löschen) Datenbank durchsuchen (Queries
SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software
SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4
Relationen-Algebra. Prof. Dr. T. Kudraß 1
Relationen-Algebra Prof. Dr. T. Kudraß 1 Relationale Anfragesprachen Query Language (QL): Manipulation und Retrieval von Daten einer Datenbank Relationenmodell erlaubt einfache, mächtige Anfragesprachen
Datenmanipulation in SQL. Select Anweisung
Datenmanipulation in SQL Unter Datenmanipulation wird sowohl der lesende Zugriff auf die Daten (Select Statement) als auch die Änderung von Daten (Insert, Delete, Update) subsummiert. Wir beginnen mit
SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)
SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans [email protected]
Übung Datenbanken in der Praxis. Anfragen an Datenbanken mit SQL
Anfragen an Datenbanken mit SQL Folie 28 Syntax einer Anfrage SFW-Anfrage (Select-From-Where-Anfrage) SELECT Projektion π FROM Kart. Produkt WHERE Selektion
DB-Datenbanksysteme. DB SQL-DML 1 Mario Neugebauer
DB-Datenbanksysteme DB-13 043-SQL-DML 1 Mario Neugebauer Einführung Informationsmodellierung Relationales Datenbankmodell Datenbanksprache SQL Einführung Daten-Abfrage-Sprache - DQL Daten-Definitions-Sprache
Webbasierte Informationssysteme
SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn - SS 2004 - Prof. Dr. Stefan Böttcher Folie 1 Was ist eine relationale Datenbank? Menge von Relationen (=Tabellen) und Constraints (=Integritätsbedingungen)
Inhaltsverzeichnis. Inhalt. 1 Einführung in die Datenbanktechnologie
3 Inhaltsverzeichnis 1 Einführung in die Datenbanktechnologie 1.1 Einleitung... 8 1.1.1 Zielsetzung... 8 1.1.2 Aufbau des Studienbuches... 9 1.1.3 Abgrenzung... 10 1.2 Grundbegriffe... 10 1.3 Datenbanksysteme...
Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)
Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der
Datenbanksysteme Kapitel: SQL Data Definition Language
Datenbanksysteme Kapitel: SQL Data Definition Language Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Peter Chamoni - Prof.
SQL. SQL SELECT Anweisung SQL-SELECT SQL-SELECT
SQL SQL SELECT Anweisung Mit der SQL SELECT-Anweisung werden Datenwerte aus einer oder mehreren Tabellen einer Datenbank ausgewählt. Das Ergebnis der Auswahl ist erneut eine Tabelle, die sich dynamisch
SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)
SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans [email protected]
Üben von DDL und DML. Ergebnis:
SQL DDL Üben von DDL und DML https://www.jdoodle.com/execute-sql-online Ergebnis: Befehlsgruppen in SQL DDL Data Definition Language DML Data Manipulation Language CREATE: Tabellen anlegen DROP: Tabellen
Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198
Auf einen Blick 1 Einleitung 15 2 Datenbankentwurf 23 3 Datenbankdefinition 43 4 Datensätze einfügen (INSERT INTO) 95 5 Daten abfragen (SELECT) 99 6 Daten aus mehreren Tabellen abfragen (JOIN) 143 7 Unterabfragen
DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER
DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.
Datenbanken im WI-Unterricht mit
Datenbanken im WI-Unterricht mit Inhaltsverzeichnis 1 ER-Modell - Entity Relationship Modell 1 1.1 Entitäten................................................. 2 1.2 Relationen................................................
SQL: Abfragen für einzelne Tabellen
Musterlösungen zu LOTS SQL: Abfragen für einzelne Tabellen Die Aufgaben lösen Sie mit dem SQL-Training-Tool LOTS der Universität Leipzig: http://lots.uni-leipzig.de:8080/sql-training/ Wir betrachten für
Datenbanksysteme I WS 17/18 HS-Übung. Universität Leipzig, Institut für Informatik Abteilung Datenbanken Prof. Dr. E. Rahm, V. Christen, M.
Datenbanksysteme I WS 17/18 HS-Übung Universität Leipzig, Institut für Informatik Abteilung Datenbanken Prof. Dr. E. Rahm, V. Christen, M. Franke Kapitel 1: Definitionen Grundlegenge Begriffe IS, DB, DBMS/
Query Languages (QL) Relationale Abfragesprachen/Relational
Relationale Algebra Relationale Abfragesprachen/Relational Query Languages (QL) Abfragesprachen: Daten aus einer Datenbank zu manipulieren und abzufragen (retrieve information) Das relationalle Modell
Wirtschaftsinformatik 7a: Datenbanken. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte
Wirtschaftsinformatik 7a: Datenbanken Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte Drei Gäste bezahlen nach einem gemeinsamen Abendessen eine Rechnung von 30 Euro, so dass jeder 10 Euro gibt.
Datenbanken. Zusammenfassung. Datenbanksysteme
Zusammenfassung Datenbanksysteme Christian Moser Seite 1 vom 7 12.09.2002 Wichtige Begriffe Attribut Assoziation API Atomares Attribut Datenbasis DBMS Datenunabhängigkeit Datenbankmodell DDL DML DCL ER-Diagramm
Die Anweisung create table
SQL-Datendefinition Die Anweisung create table create table basisrelationenname ( spaltenname 1 wertebereich 1 [not null],... spaltenname k wertebereich k [not null]) Wirkung dieses Kommandos ist sowohl
Daniel Warner SQL. Das Praxisbuch. Mit 119 Abbildungen. Franzis
Daniel Warner SQL Das Praxisbuch Mit 119 Abbildungen Franzis Inhaltsverzeichnis Teil I - Einleitung 15 1 Einleitung 17 1.1 Zum Aufbau des Buchs 17 1.2 Hinweise zur Buch-CD 18 1.3 Typografische Konventionen
SQL structured query language
Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query
Schlüssel. Definition: Ein Schlüssel (key) einer Relation r(r) ist eine Til Teilmenge K von R, so dass für je zwei verschiedene Tupeln t 1
Schlüssel Definition: Ein Schlüssel (key) einer Relation r(r) ist eine Til Teilmenge K von R, so dass für je zwei verschiedene Tupeln t 1 und t 2 r gilt: - t 1 (K) t 2 (K) und - keine echte Teilmenge K'
Vorlesung Datenbankmanagementsysteme
Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse & Einführung Online Analytical Processing (OLAP) (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse M. Lange, S.
Datenbanken und SQL. Kapitel 4. Die Datenbankzugriffssprache SQL. Edwin Schicker: Datenbanken und SQL (4)
Datenbanken und SQL Kapitel 4 Die Datenbankzugriffssprache SQL Die Datenbankzugriffssprache SQL Der Select-Befehl Der Hauptteil des Select-Befehls From-, Where-, Select-Klausel Group By und Having Join
2.5 Relationale Algebra
2.5 Relationale Algebra 2.5.1 Überblick Codd-vollständige relationale Sprachen Relationale Algebra Abfragen werden durch exakte Angabe der auf den Relationen durchzuführenden Operationen formuliert Relationenkalküle
Grundlagen von Datenbanken
Agenda: Grundlagen von Datenbanken SS 2010 3. Relationale Algebra Prof. Dr. Stefan Böttcher Universität Paderborn mit Material von Prof. Dr. Gregor Engels Grundlagen von Datenbanken - SS 2010 - Prof. Dr.
Marcus Throll, Oliver Bartosch. Einstieg in SQL. Verstehen, einsetzen, nachschlagen. Galileo Press
Marcus Throll, Oliver Bartosch Einstieg in SQL Verstehen, einsetzen, nachschlagen Galileo Press Auf einen Blick 1 Einleitung 15 2 Datenbankentwurf 23 3 Datenbankdefinition 43 4 Datensätze einfügen (INSERT
Einführung SQL Data Definition Language (DDL)
Innsbruck Information System University of Innsbruck School of Management Universitätsstraße 15 6020 Innsbruck Einführung SQL Data Definition Language (DDL) Universität Innsbruck Institut für Wirtschaftsinformatik,
Mengen- oder SET-Operatoren fassen das Ergebnis von zwei oder mehreren Teilabfragen zu einem Ergebnis zusammen.
Tipps & Tricks: Mengenoperatoren Bereich: DBA, SQL Erstellung: 06/2004 MP Versionsinfo: 10.1, 10.2, 11.1, 11.2 Letzte Überarbeitung: 06/2009 MA Mengenoperatoren Mengen- oder SET-Operatoren fassen das Ergebnis
Relationale Datenbanksprachen
Relationale Datenbanksprachen SQL-Kern Weitere Sprachkonstrukte von SQL SQL-Versionen Andreas Heuer, Gunter Saake Datenbanken I 9-1 Sprachen und ihre Grundlagen Grundlagen Kommerzielle Sprachen ISBL SQL
dbis Praktikum DBS I SQL Teil 2
SQL Teil 2 Übersicht Fortgeschrittene SQL-Konstrukte GROUP BY HAVING UNION / INTERSECT / EXCEPT SOME / ALL / ANY IN / EXISTS CREATE TABLE INSERT / UPDATE / DELETE 2 SELECT Syntax SELECT FROM [WHERE [GROUP
