SQL (eBook)

der Grundkurs für Ausbildung und Praxis

(Autor)

eBook Download: PDF | EPUB
2023 | 5., akt. Auflage
492 Seiten
Carl Hanser Fachbuchverlag
978-3-446-47919-7 (ISBN)

Lese- und Medienproben

SQL -  Ralf Adams
Systemvoraussetzungen
Systemvoraussetzungen
29,99 inkl. MwSt
  • Download sofort lieferbar
  • Zahlungsarten anzeigen
Lernen Sie SQL ohne Datenbank-Vorkenntnisse
Als Einsteiger:in werden Sie in diesem Buch Schritt für Schritt an die Arbeit mit SQL herangeführt. Vom Aufbau über das Ändern einer Datenbank und die Auswertung der Daten bis hin zur Administration und zum Verteilen der Datenbank auf verschiedene Server lernen Sie alle wesentlichen Aufgabenstellungen kennen. Die Beispiele sind für MySQL/MariaDB, PostgreSQL und T-SQL getestet.

Grundlagen und praktischer Einsatz
Sie erhalten eine kurze Einführung in die wichtigsten Grundbegriffe und Designregeln für relationale Datenbanken wie ER-Modell, Schlüssel, referenzielle Integrität und Normalformen. Anhand einer Beispieldatenbank, die unter MySQL/MariaDB, PostgreSQL und T-SQL verwendet werden kann, erfahren Sie dann, wie Sie SQL sinnvoll anwenden.

Kenntnisse mit Übungsaufgaben festigen
Jedes Kapitel enthält Übungen, mit denen Sie Ihr frisch erworbenes Wissen testen können. Wenn Sie SQL-Befehle einfach nachschlagen wollen, hilft Ihnen der MySQL-Befehlsindex am Ende des Buches. Darüber hinaus geht der Autor auch auf weiterführendeThemen wie NoSQL und SQL Injection ein, die Lust machen, sich über den Grundkurs hinaus vertiefend mit SQL zu beschäftigen.

Unter plus.hanser-fachbuch.de finden Sie die Beispieldatenbank mit rund 1.170 SQL-Anweisungen und die Lösungen zu den Übungsaufgaben zum Download.

Ralf Adams, Diplom-Informatiker, ist Lehrer für Informatik (Schwerpunkt Anwendungsentwicklung) am Technischen Berufskolleg 1 der Stadt Bochum. Von 2003 bis 2016 war er Mitglied des IHK-Prüfungsausschusses für Fachinformatiker/Anwendungsentwicklung in Bochum. Seine Erfahrungen im Schulbetrieb und im Prüfungsausschuss sind in das Buch mit eingeflossen.

1 Datenbanksystem
1.1 Aufgaben und Komponenten

Es werden die wichtigsten Aufgaben und Komponenten eines Datenbanksystems vorgestellt. Die Begriffe werden lediglich eingeführt, weil sich ein detailliertes Verständnis erst in den nachfolgenden Kapiteln entwickeln kann.

Grundkurs

Datenbank

Datenbankmanagementsystem

Datenbanksystem

Ein Datenbanksystem besteht aus einem Datenbankmanagementsystem (DBMS) und den Datenbanken (DB). Beide Komponenten sind in der Praxis eng miteinander verzahnt, sollten aber gedanklich unterschieden werden.

In Bild 1.1 ist der Aufbau eines Datenbanksystems schematisch dargestellt. Die Datenbanken enthalten die eigentlichen Daten und unmittelbar damit verknüpfte Datenobjekte wie z.B. eine Ansicht (siehe Kapitel 16). Über eine Kommunikationsschnittstelle werden diese Datenobjekte vom DBMS verwaltet. Das DBMS selbst besteht wiederum aus vielen kleinen Komponenten, die jeweils auf eine Aufgabe spezialisiert sind.

1.1.1 Datenbank

Die Aufgabe der Datenbank ist die logische und physische Verwaltung der Daten und damit eng verbundener Datenobjekte. Alle diese Datenobjekte können vom Programmierer angelegt, geändert und gelöscht werden. Die Änderungen beziehen sich sowohl auf die Struktur als auch auf den Inhalt. So können einer Tabelle neue Spalten (z.B. zweiter Vorname bei einer Adresse) als auch neue Zeilen (z.B. eine neue Adresse) hinzugefügt werden.

Üblicherweise werden in einer Datenbank folgende Datenobjekte vorkommen1:

Tabellen: Bei einer relationalen Datenbank werden die Daten in Tabellen organisiert (Kundentabelle, Artikeltabelle, Filmtabelle usw.). Deshalb sind die Tabellen das Herzstück einer Datenbank. Alle anderen Datenbankobjekte sind aus diesen Tabellen abgeleitet oder verwenden diese.

Bild 1.1 Aufbau eines Datenbanksystems

Temporäre Tabellen: Sie werden explizit vom Programmierer oder implizit vom Optimierer angelegt, um Zwischenergebnisse wiederverwendbar zu machen. In der Regel werden diese automatisch nach Beendigung einer Sitzung gelöscht.

Indizes:Diese erlauben eine erhebliche Beschleunigung bestimmter Auswertungen. Die Daten aus den Tabellen werden dabei in frei wählbaren, aber festgelegten Reihenfolgen sortiert.

Ansichten: Auf Vorrat gebastelte Auswertungen, die wie Tabellen verwendet werden können, ohne dabei einen eigenen Datenbestand aufzubauen.

Prozeduren: Kleine, selbst geschriebene SQL-Programme, die auf dem Server ausgeführt werden.

Trigger: Auch kleine, selbst geschriebene Programme, die aber automatisch aufgerufen werden, wenn Daten in den entsprechenden Tabellen verändert werden.

Ereignisse: Schon wieder kleine, selbst geschriebene Programme, die zeitgesteuert aufgerufen werden.

Definition 1: Datenbank (eng)

Unter einer Datenbank im engeren Sinn versteht man eine Informationssammlung, die so strukturiert ist, dass sie zweckgebunden und effizient IT-gestützt verwaltet und ausgewertet werden kann.

Entscheidend ist, dass die Daten strukturiert sind! Jede Informationssammlung, die eine gewisse Struktur hat, kann letztlich von einem Computerprogramm verwaltet und ausgewertet werden. Fehlt die Struktur, sieht das Ganze schon anders aus.

Aufgabe 1.1: Überlegen Sie sich mindestens zwei Beispiele für strukturierte und unstrukturierte Datensammlungen.

In MySQL und MariaDB werden die Datenbanken durch die Storage Engines (z.B. InnoDB bzw. XtraDB) realisiert. Diese legen auf den Festspeicherplatten die Dateien an, in denen die Daten abgespeichert werden. Auch die Zugriffskontrolle erfolgt durch die Storage Engines.

1.1.2 Datenbankmanagementsystem

Oben habe ich erwähnt, dass ein Datenbanksystem aus der Datenbank und einem Datenbankmanagementsystem besteht.

Definition 2: Datenbankmanagementsystem (DBMS)

Eine Toolsammmlung zur Verwaltung, Bearbeitung und Auswertung einer Datenbank nennt man Datenbankmanagementsystem (DBMS).

Dies sind die Aufgaben eines DBMS2:

Sprachinterpreter: Herzstück desDBMS ist der Interpreter3. Dieser übersetzt die Befehle in einen ausführbaren Code. Die Sprache, die wir hier im Buch verwenden werden, ist SQL. Es gibt und gab aber auch andere Datenbankabfragesprachen wie zum Beispiel dBase, VB für MS-Access, OO-SQL, Sequel usw.

Optimierer: Die Ausführung eines SQL-Befehls kann oft auf verschiedene Art undWeise passieren. Der Optimierer versucht, anhand von Schätzungen und Algorithmen einen Plan für die Ausführung anzulegen, der möglichst schnell abgearbeitet werden kann.

Sitzungsverwaltung:Wann immer ein Befehl an den Server gesendet werden soll, muss man sich in einer Sitzung (engl. session) befinden. Dazu muss zuerst eine Sitzung geöffnet werden. Jetzt können beliebig viele SQL-Befehle gesendet und Daten empfangen werden. Zum Schluss wird die Sitzung serverseitig – z.B. durch einen Timeout – oder clientseitig beendet.

Randbedingungsprüfer: Für Tabellen können Randbedingungen (engl. constraints) formuliert werden, die immer gelten müssen. Würde die Ausführung eines Befehls dazu führen, dass diese Randbedingungen nicht erfüllt sind, wird die Ausführung des Befehls in der Regel verweigert.

Datenschutz: Durch die Vergabe von Zugriffsrechten kann das Recht auf lesende und schreibende Zugriffe so wie auf das Ausführen von Prozeduren passgenau zugeschnitten werden.

Datensicherheit: Der Verlust von Daten ist der GAU4 schlechthin. Das DBMS muss sicherstellen, dass nicht durch Serverabsturz oder Ähnliches Daten verloren gehen.

Transaktionsmanagement: Transaktionen ermöglichen parallelen Zugriff und eine Art undo im Fehlerfall. Das zu gewährleisten, erfordert eine Menge Mühe. Die Qualität des Transaktionsmanagements ist oft ein entscheidendes Merkmal eines DMBS.

API5: Die Daten werden in der Regel durch eine oder mehrere Anwendungen (Clients) bearbeitet. Damit die Anwendung auf das DBMS zugreifen kann, braucht es eine Schnittstelle, über die es zu den Daten gelangt. Diese APIs werden in der MySQL-/MariaDB-Welt Konnektoren genannt. Der MySQL oder MariaDB Server bietet beispielsweise APIs für C, C++, C#/.NET, Node.js PHP, Perl, Python, Ruby und Tcl. Auch stehen APIs für JDBS6 und ODBC7 zur Verfügung. MariaDB kennt zusätzlich noch Schnittstellen zu Erlang, Jupyter, Excel, Swift und R.

Metadaten: Verwaltungsinformationen, Statistiken etc., eben der ganze Rest.

Der Begriff Datenbankmanagementsystem wird oft anstelle von Datenbanksystem verwendet. Gerade die schematischen Darstellungen in den Dokumentationen der Hersteller unterscheiden nicht zwischen diesen beiden Begriffen.

Sind die Datenbanken eines Datenbankmanagementsystems in Form von Tabellen organisiert, so handelt es sich umein relationales Datenbankmanagementsystem(RDBMS); bei objektorientierten Datenbanken spricht man analog von objektorientierten Datenbankmanagementsystemen (OODBMS).

Und noch der Vollständigkeit halber:

Definition 3: Datenbanksystem

Ein System, welches die Datenbanken und das dazugehörige Datenbankmanagementsystem als Komplettpaket anbietet, nennt man Datenbanksystem.

1.2 Im Buch verwendete Server

Kurzporträts der verwendeten SQL Server: Hersteller und Geschichte

Bild 1.2 Ranking einiger RDBMSe, Quelle [DE23]

In der ersten Auflage dieses Buchs habe ich fast ausschließlich MySQL/MariaDB als Plattform genutzt. Um SQL breiter vorstellen zu können, wurden in der zweiten Auflage die meisten Beispiele auch in PostgreSQL angeboten. Konsequenterweise wird seit der...

Erscheint lt. Verlag 6.11.2023
Zusatzinfo Illustrationen
Verlagsort München
Sprache deutsch
Themenwelt Mathematik / Informatik Informatik Datenbanken
Mathematik / Informatik Informatik Netzwerke
ISBN-10 3-446-47919-8 / 3446479198
ISBN-13 978-3-446-47919-7 / 9783446479197
Haben Sie eine Frage zum Produkt?
Wie bewerten Sie den Artikel?
Bitte geben Sie Ihre Bewertung ein:
Bitte geben Sie Daten ein:
PDFPDF (Wasserzeichen)
Größe: 13,0 MB

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: PDF (Portable Document Format)
Mit einem festen Seiten­layout eignet sich die PDF besonders für Fach­bücher mit Spalten, Tabellen und Abbild­ungen. Eine PDF kann auf fast allen Geräten ange­zeigt werden, ist aber für kleine Displays (Smart­phone, eReader) nur einge­schränkt geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

EPUBEPUB (Wasserzeichen)
Größe: 9,8 MB

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belle­tristik und Sach­büchern. Der Fließ­text wird dynamisch an die Display- und Schrift­größe ange­passt. Auch für mobile Lese­geräte ist EPUB daher gut geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür die kostenlose Software Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür eine kostenlose App.
Geräteliste und zusätzliche Hinweise

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
Das umfassende Handbuch

von Wolfram Langer

eBook Download (2023)
Rheinwerk Computing (Verlag)
49,90
Das umfassende Handbuch

von Jürgen Sieben

eBook Download (2023)
Rheinwerk Computing (Verlag)
89,90
Das umfassende Lehrbuch

von Michael Kofler

eBook Download (2024)
Rheinwerk Computing (Verlag)
39,90