SQLite: Fortgeschrittene Techniken

In diesem Kurs vertiefen Sie Ihre Kenntnisse in fortgeschrittenen SQLite-Techniken. Meistern Sie Constraints, Indizierung, Joins, Subqueries, Transaktionen, Trigger, Views, Volltextsuche, JSON, Backups, PRAGMA-Optimierung, CTEs, Window Functions und mehr!

DatenbankSQLite

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Erweitere deine SQLite-Kenntnisse in 17 geführten Labs zu anspruchsvolleren Abfragen, Integrität, Automatisierung, spezialisierter Suche, Analyse, Sicherung, Tuning und Wartung. Jedes Lab nutzt eine kleine lokale Datenbank, damit du SQL oder CLI-Befehle ausführst und Schema, Zeilen, Abfrageplan oder Zustand untersuchst.

Der Kurs deckt viele mittelstufige und fortgeschrittene Themen ab, bleibt aber schrittweise geführt. Von Constraints und Indizes gehst du zu Joins, Unterabfragen, Transaktionen, Triggern, Views, FTS5, CTEs, Fensterfunktionen und Betriebsbefehlen über, ohne eine einzelne große Anwendung zu entwerfen.

Was du lernen wirst

  • Integrität mit Fremdschlüsseln, CHECK-Constraints, zusammengesetzten Schlüsseln und ON CONFLICT-Aktionen sichern
  • Indizes erstellen und löschen, EXPLAIN QUERY PLAN prüfen, Indizes neu aufbauen, ANALYZE ausführen und mit VACUUM Platz zurückgewinnen
  • Daten mit inneren und linken Joins, Mehrtabellen-Joins, Aggregaten, GROUP BY, HAVING und korrelierten Unterabfragen kombinieren und zusammenfassen
  • Änderungen mit BEGIN, COMMIT, ROLLBACK, Savepoints und Constraints gegen ungültige Salden kontrollieren
  • Auditdaten mit Triggern automatisieren und einfache, verbundene, aggregierte und triggergestützt aktualisierbare Views bauen
  • FTS5-Virtual Tables erstellen und MATCH-, Präfix-, Spalten- und boolesche Volltextsuchen verwenden
  • JSON als Text speichern und eine eigene Python-SQL-Funktion json_extract für Extraktion, Filterung und Aktualisierung bereitstellen
  • SQL-Dumps exportieren und wiederherstellen, PRAGMAs konfigurieren, temporäre Tabellen nutzen, einfache und rekursive CTEs schreiben und Ränge und laufende Summen mit Fensterfunktionen berechnen

Für wen dieser Kurs geeignet ist

Dieser Kurs richtet sich an Entwickler, Analysten und Datenbanklernende, die SQLite-Datenbanken und Tabellen erstellen und grundlegende SELECT-, INSERT-, UPDATE- und DELETE-Anweisungen schreiben können. Er bietet geführten Einblick in viele SQLite-spezifische Funktionen vor ihrer Anwendung in größeren Projekten.

Voraussetzungen: Grundkenntnisse in SQLite-CLI und SQL werden empfohlen, darunter Tabellenerstellung, Primärschlüssel, einfache Filter und CRUD. Python-Grundlagen helfen im JSON-Lab, sind sonst aber kaum nötig.

Lernumgebung: Alle 17 geführten, als Einsteiger eingestuften Labs laufen in einer Ubuntu-22.04-Desktop-VM, hauptsächlich mit sqlite3. Sie enthalten 84 Aufgabenabschnitte und 101 automatische Prüfungen; das JSON-Lab erstellt zusätzlich ein Python-Skript mit den Standardmodulen sqlite3 und json.

Häufig gestellte Fragen

Wie fortgeschritten ist der Kurs tatsächlich?

Die Themen reichen mit rekursiven CTEs, Fensterfunktionen, FTS5, Triggern und Abfrageplänen über Basis-SQL hinaus. Alle 17 Labs sind jedoch als Einsteiger eingestuft und führen Befehle an kleinen Datenbanken schrittweise vor; der Schwerpunkt ist Funktionspraxis statt eigenständiger Datenbanktechnik.

Verwendet das JSON-Lab die nativen JSON-Funktionen von SQLite?

Nein. Es speichert JSON als Text, definiert eine Python-Funktion namens json_extract und registriert sie auf einer Python-SQLite-Verbindung. Das unterscheidet sich von eingebauten JSON-Operatoren oder -Funktionen in SQLite.

Welche Art von Sicherung wird durchgeführt?

Das Lab erstellt mit dem CLI-Befehl .dump einen textuellen SQL-Dump und stellt ihn durch Übergabe an eine neue Datenbank wieder her. Online-Backup-API, sichere Binärkopien, geplante Sicherungen und Point-in-Time-Recovery fehlen.

Bereitet mich der Kurs auf das Tuning einer Produktionsdatenbank vor?

Er führt in Indizes, Pläne, Journalmodus, Fremdschlüsselprüfung, Cachegröße, Integritätsprüfung, ANALYZE und VACUUM ein. Reale Lasttests, parallele Writer, Anwendungsverbindungen, Ausfalltests und Produktionsüberwachung werden nicht behandelt.

Lehrer

labby
Labby
Labby is the LabEx teacher.

Für Sie empfohlen

no data