Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

SQL als Abfragesprache. Allgemeines Zitat Wikipedia: SQL ist eine Datenbanksprache zur Definition Abfrage Manipulation von Daten in relationalen Datenbanken.

Ähnliche Präsentationen


Präsentation zum Thema: "SQL als Abfragesprache. Allgemeines Zitat Wikipedia: SQL ist eine Datenbanksprache zur Definition Abfrage Manipulation von Daten in relationalen Datenbanken."—  Präsentation transkript:

1 SQL als Abfragesprache

2 Allgemeines Zitat Wikipedia: SQL ist eine Datenbanksprache zur Definition Abfrage Manipulation von Daten in relationalen Datenbanken. Für folgende und weitere Infos siehe auch:

3 Allgemeines SQL umfasst drei Arten von Datenbanksprachen: Datamanipulation Language (wird zum lesen/schreiben/ändern und löschen von Datenbankinhalten benutzt) Data Definition Language (wird zum Definieren der Datenstruktur benötigt) Data Control Language (wird zur Vergabe von Zugriffsrechten innerhalb der Datenbank benötigt)

4 Praktischer Teil...oder: Wie fange ich überhaupt an wenn ich wollte? 1.XAMPP starten 2.Bei MySQL auf Admin... klicken 3.Links im Menu auf mysql 4.Oben auf den Reiter Abfrageeditor 5.Unten rechts können wir jetzt die SQL- Befehle in das Feld eingeben

5 Praktischer Teil Mini-Wiederholung: Relationale Datenbanken Playlist Merke: Relationale Datenbanken sind Daten in tabellarischer Form, jede Zeile (Tupel) kann durch einen eindeutigen Index (Primary Key) identifiziert werden NummerInterpretSongtitel 1Musiker1Musiker1LiedA 2Musiker2Musiker2LiedA 3Musiker1Musiker1LiedB

6 Praktischer Teil Schritt 1: Die Playlist als Tabelle in SQL anlegen Eingeben und auf ok klicken: Wir haben jetzt eine leere Tabelle mit 3 Spalten und einem zugehörigen Datentyp erzeugt (genauere Erklärungen zu den Folien siehe Handout) CREATE TABLE Playlist ( Nummer INT NOT NULL PRIMARY KEY, Interpret varchar(50) NOT NULL, Songtitel varchar (50) NOT NULL )

7 Praktischer Teil Schritt 2: Die Tabelle mit Inhalt füllen: Wir haben jetzt eine Mini-Datenbank angelegt, die wir zum Beispiel per Select-Anweisung abfragen können. INSERT INTO Playlist (Nummer, Interpret, Songtitel) VALUES (1, 'Musiker1', 'Musiker1LiedA'), (2, 'Musiker2', 'Musiker1LiedA'), (3, 'Musiker1', 'Musiker1LiedB')

8 Praktischer Teil Beispiel 1: Gibt alle Songtitel aus Playlist aus Beispiel 2: Gibt alle Nummer(n) und Songtitel aus, wo Interpret den Wert Musiker1 hat: SELECT Songtitel FROM Playlist SELECT Nummer, Songtitel FROM Playlist WHERE Interpret = Musiker1

9 Praktischer Teil Schritt 3: Die Tabelle verändern Problem: Wir haben auf einmal eine Albumangabe, für die ja keine Spalte in unserer Datenbank vorhanden ist. Dies fügt eine weitere (noch leere) Spalte Album in unsere Tabelle ein. ALTER TABLE Playlist ADD Album varchar(50)

10 Praktischer Teil Schritt 4: Den Namen des Albums einfügen Fügt in der Zeile, in der Nummer den Wert 1 hat, in der Spalte Album den Wert AlbumIMusiker1 ein. UPDATE Playlist SET Album=AlbumIMusiker1 WHERE Nummer = 1

11 Theoretischer Teil...oder: Was sonst noch möglich ist. 1.Datamanipulation Language Wichtigste Befehle: SELECT* INSERT* UPDATE* DELETE *siehe praktisches Beispiel

12 Theoretischer Teil Allgemeine Form der Select-Anweisung: SELECT SpaltennameA, SpaltennameB FROM Tabellenname (oder auch Relationsname genannt) WHERE Boolsche Bedingung (zum Beispiel=,, AND, OR, usw.) Wählt nur jene Spalten, bei denen eine vorher angegebene Bedingung erfüllt ist.

13 Theoretischer Teil SELECT SpaltennameA, SpaltennameB FROM Tabellenname GROUP BY Anweisung (zum Beispiel COUNT, MAX, MIN, usw.) Wählt die jeweiligen Spalten aus und führt anschließend eine mathematische Funktion aus.

14 Theoretischer Teil SELECT SpaltennameA, SpaltennameB FROM Tabellenname ORDER BY Spaltenname Anweisung (zum Beispiel asc desc) Gibt die Spalten aus und ordnet sie nach ihrer Reihenfolge (asc= aufsteigend, desc= absteigend)

15 Theoretischer Teil INSERT INTO Tabellenname (Spaltenname) VALUES (Wert1, Wert2, Wert3) WHERE Boolsche Bedingung Fügt in die Spalte der Tabelle Werte ein, bei der eine bestimmte Bedingung erfüllt ist (siehe Beispiel im praktischen Teil)

16 Theoretischer Teil UPDATE Tabellenname SET Spaltenname = Wert WHERE Boolsche Bedingung Ändert den Wert jener Tupel (Zeilen), bei denen eine bestimmte Bedingung erfüllt ist.

17 Theoretischer Teil DELETE FROM Tabellenname WHERE Boolsche Bedingung Löscht den/die Tupel(Zeilen), bei denen eine bestimmte Bedingung erfüllt ist

18 Theoretischer Teil 2. Data Definition Language Wichtigste Befehle: CREATE (erzeugt)* DROP (löscht) ALTER (ändert)* *siehe praktisches Beispiel

19 Theoretischer Teil CREATE TABLE Tabellenname (Spaltenname1 Datentyp, Spaltenname2 Datentyp, Spaltenname3 Datentyp) Erzeugt eine Tabelle mit 3 Spalten und den zugehörigen Datentypen (für eine Liste der möglichen Datentypen siehe Handout)

20 Theoretischer Teil DROP TABLE Tabellenname Löscht die betreffende Tabelle ALTER TABLE Tabellenname ADD Spaltenname4 Datentyp, Spaltenname5 Datentyp Fügt in die betreffende Tabelle zwei neue Spalten mit entsprechendem Datentyp ein

21 Theoretischer Teil 3. Data Control Language Wichtige Befehle: GRANT REVOKE

22 Theoretischer Teil GRANT Befehl1 (z.B. SELECT), Befehl2 (z.B. UPDATE) ON TABLE Tabellenname TO Benutzername Dem betreffenden Benutzer (oder Benutzergruppe) wird das Recht zugesprochen, eine bestimmte Tabelle auszulesen (SELECT) und deren Inhalt zu verändern (UPDATE) Ersetzt man GRANT durch REVOKE, werden die entsprechenden Rechte wieder genommen

23 SQL als Abfragesprache ENDE


Herunterladen ppt "SQL als Abfragesprache. Allgemeines Zitat Wikipedia: SQL ist eine Datenbanksprache zur Definition Abfrage Manipulation von Daten in relationalen Datenbanken."

Ähnliche Präsentationen


Google-Anzeigen