🎚️PRAGMAs, Einsatzgebiete und Grenzen

PRAGMA-Anweisungen sind SQLites Stellschrauben und Diagnosewerkzeuge. Sie laufen hier gegen eine Kopie der Beispiel-Datenbank in deinem Browser. Quellen: sqlite.org/pragma.html, /whentouse.html, /limits.html.

🔧PRAGMA-Explorer

SQLite (WebAssembly) wird geladen …

✅Wann SQLite?

„SQLite konkurriert nicht mit Client/Server-Datenbanken, sondern mit fopen()“ – so beschreibt es das SQLite-Projekt selbst.
📱
Eingebettete Geräte & Apps
Smartphones, Autos, Fernseher, Kameras – keine Administration, eine Datei, sehr robust.
🗂️
Anwendungs-Dateiformat
Statt eigener Binärformate: Transaktionen, Abfragen und Abwärtskompatibilität geschenkt.
🌐
Websites mit geringer bis mittlerer Last
Laut sqlite.org meist unproblematisch bis etwa 100 000 Zugriffe am Tag – oft deutlich mehr; entscheidend sind die gleichzeitigen Schreibzugriffe.
📊
Datenanalyse & Austausch
CSV importieren, mit SQL auswerten, Ergebnis als eine Datei weitergeben.
⚡
Cache & Zwischenspeicher
Lokaler Cache für Daten aus einem entfernten Dienst.
🧪
Tests & Prototypen
In-Memory-Datenbank (:memory:) startet in Mikrosekunden.

🏢Wann lieber Client/Server?

✍️
Viele gleichzeitige Schreiber
Es gibt immer nur einen Schreiber je Datenbank. Hohe parallele Schreiblast → MariaDB/PostgreSQL.
🛰️
Zugriff über das Netzwerk
Viele Clients auf verschiedenen Rechnern: Netzwerk-Dateisysteme haben oft fehlerhafte Sperren. Ein Datenbank-Server gehört dann davor.
🏔️
Sehr große Datenmengen
Technisch bis ca. 281 TB, praktisch begrenzt durch Dateisystem, Backup und die eine Datei.
👥
Benutzer- und Rechteverwaltung
SQLite kennt keine Benutzer, Rollen oder GRANT – Zugriffsschutz regelt das Dateisystem.
✅ Faustregel
Liegen Daten und Anwendung auf demselben Rechner, ist SQLite fast immer eine gute Wahl. Trennt ein Netzwerk die beiden oder schreiben viele gleichzeitig, passt eher ein Server wie MariaDB – siehe VisualMariaDb.

📏Grenzen (Standardwerte)

Datenbankgröße4 294 967 294 Seiten × 65 536 Bytes ≈ 281 TB
Länge eines TEXT/BLOBStandard 1 000 000 000 Bytes (SQLITE_MAX_LENGTH)
Spalten je TabelleStandard 2000 (SQLITE_MAX_COLUMN)
Länge einer SQL-AnweisungStandard 1 000 000 000 Bytes
Angehängte DatenbankenStandard 10 (ATTACH), maximal 125
Gleichzeitige Schreiber1 je Datenbankdatei