top of page

SQL

Was ist eigentlich eine Datenbank?

In der Umgangssprache werden größere Sammlungen von Daten gerne als "die Datenbank" bezeichnet. Dabei gibt es verschiedenartige Arten und Weisen, wie man solche Datenbanken realisiert, z.B. relationale Systeme und Volltextdatenbanken und spezielle Datenbanken wie z.B. die bekannte Suchmaschine von Google. Wir realisieren in unserem Unterricht eine relationale Datenbank mit ...

  • mindestens einer Tabelle

  • mit Zeilen

  • und Spalten

... und einem schnellen Zugriff auf alle gespeicherten Daten.

DatenbankServer.png

Die größte Datenbank der Welt finden Sie wohl hier ...

(Achten Sie bitte mal auf die pro Person gespeicherte Datenmenge!)

Vorteile der Datenbanknutzung gegenüber einer Sicherung von Daten in Dateien

  1. Datenbankserver sind häufig nicht direkt erreichbar aus dem Internet und somit sicherer als Dateien, auf welche vielleicht direkt aus dem Internet zugegriffen werden kann.

  2. Datenbanken können viele verschiedene Tabellen mit tausenden von Daten-Einträgen enthalten. Auf solche Weise gespeicherte Daten haben eine bessere Ordnung/Struktur und sind daher übersichtlicher und leichter zu verwalten.

  3. Abhängig von der Rolle eines Nutzers (z.B. Chef, Angestellter, Praktikant) besteht die Möglichkeit der Erteilung unterschiedlicher Zugriffsberechtigungen auf verschiedene Tabellen (user/passwd).

  4. Der Zugriff auf die Datenbank kann über unterschiedliche Softwaresysteme (via SQL) erfolgen (z.B. App für Mobiltelefon, HTML-Seite, usw.).

  5. Es kann 'gleichzeitig' auf die Daten zugegriffen werden von mehreren Nutzern (lesend und schreibend).

  6. Die Daten werden getrennt von der installierten Software und dem Design der Nutzersoftware gespeichert. Dieses ermöglicht ein separates Backup Ihrer Daten.

 

Zugriff auf den DB-Server / Sicherheit, Identifikation

Was wird benötigt, um auf einen DB-Server zugreifen zu können?

  1. Kennung: user/password

  2. Name des Servers

  3. Name der Datenbank

  4. Zugriffsrechte der Kennung auf die Datenbank

  5. Eine Sprache, mit der wir die Datenbank abfragen können => z.B. SQL

Programmierumgebung z.B.

  1. Nordwind Datenbank / Microsoft Access

Was ist SQL?

Die so genannte Structured Query Language dient dem Arbeiten mit der Datenbank. Mit den Befehlen select, delete,

Aufgabe:

Bearbeiten Sie selbstständig die Lektionen 1,2 & 6 des folgenden Tutorials:


Hinweise zu den Lektionen:
Sie werden in Lektion 1 viele neue Befehle kennen lernen und ausprobieren in denen Schlüsselwörter vorkommen wie z.B.

  • select (hinter dem select-Befehl stehen die Namen der anzuzeigenden Spalten oder * für alle)

  • from (hinter from steht der Name der Datenbanktabelle)

  • where (optional / hinter where befindet sich die Suchabfrage bzw. die Auswahl der anzuzeigenden Datensätze)

  • and, or, not (können verwendet werden um mehrere Bedingungen miteinander zu verknüpfen)

  • between ... and ... (wird verwendet für Bereichsabfragen)

  • like '%irgendwas%' (wird verwendet um Teile von Zeichenketten in einer Datenbankspalte zu identifizieren - auch Ausschluß mit not like ist eine mögliche Variante - % steht als Platzhalter für beliebige Zeichen)

  • in ('dies', 'das', 'jenes') (wird verwendet, wenn Sie einen Menge von Suchkriterien haben)

  • is NULL (wird z.B. genutzt, um leere Datenbankfelder ausfindig zu machen - funktioniert auch mit not is - eine leere Zeichenkette ist übrigens nicht identisch mit NULL)

  • select distinct (verwendet man zum Aussortieren doppelter Ergebnisse)

  • as (dient der Beschriftung von Tabellenspalten im Ergebnis - welche z.B. durch eigene Berechnungen basierend auf Tabellenwerten hinzukommen - z.B. select Produktbezeichnung, Preiscent/100 as Euro from Produkte)

  • order by Spaltenbezeichnung desc
    order by Spaltenbezeichnung asc
    (wird verwendet für die aufsteigende oder absteigende alphabetische Sortierung der Ergebniszeilen. Anstelle der Spaltenbezeichner können auch die Spaltennumemrn angegeben werden
    z.B.: order by 2 desc, 1 asc)

  • limit 10 (begrenzt die Anzahl der auszugebenden Datensätze z.B. auf 10 - limit 4,6 gibt ab dem 5ten Datensatz 6 Einträge aus)


Lektion 2 enthält die so genannten Aggregatfunktionen, d.h. Funktionen zum Zählen bzw. Zusammenzählen, Bestimmung von Minimum und Maximum usw.

  • Bsp: select sum(einwohner) as Personen from cia summiert die Einträge der Spalte einwohner und gibt nur die Gesamtanzahl mit der Überschrift Personen aus.

  • Bsp: select count(einwohner) from cia where name like '%land%' zählt die Anzahl der Einträge in denen der Landesname die Zeichenkette 'land' enthält

  • Bsp: select avg(einwohner) from cia ermittelt die durchschnittliche Einwohnerzahl.

  • Bsp: select min(einwohner) from cia ermittelt die kleinste Einwohnerzahl eines Landes.

  • Bsp: select max(einwohner) from cia ermittelt die größte Einwohnerzahl eines Landes.


Lektion 5 enthält geschachtelte SQL-Anweisungen, d.h. SQL-Anweisungen in SQL-Anweisungen.

  • Mit SQL-Anweisung Nr.1 könnten Sie z.B. die Einwohnerzahl von Spanien ermitteln. Diese Anweisung kann jetzt in einer anderen SQL-Anweisung verwendet werden, um z.B. zu überprüfen, welche Länder in Europa eine höhere Einwohnerzahl haben.

    • Anweisung 1: select Einwohner from cia where Name = 'Spanien'

    • Anweisung 2: select Name from cia where region='Europa' and Einwohner > ( Anweisung 1 )


(Es folgen weitere Lektionen, die anschließend bearbeitet werden)

Der eigene SQL-Server

© 2018 by Rüdiger Borrmann

© 2018/2019/2020 by Rüdiger Borrmann

bottom of page