<sub class="descriptionSection">08-10-2024 07:55:am // #DBMS-Modell // [[DBMS Modelle]]</sub>
____
## Übersicht
Das DBMS SQLite ist eine besondere Form des DBMS, da nicht wie bei jedem anderen DBMS ein schwergewichtiger Server, sondern nur ein einziges Filee genutzt wurd. SQLite besteht eigentlich nur aus einer Programmbibliothek die ein relationales [[DBMS Begriffe#DBS#|DBS]] enthält. Es wird von nur drei Entwicklern entwickelt, der Code ist aber in der Public Domain und kann eingesehen werden (die Drei Entwickler nehmen allerdings keine Changes von außerhalb an). SQLite ist für C geschrieben worden.
> [!NOTE] Note
> Nach der offiziellen Zahl, gibt es über 1 trillionen (1e12) SQLite Datenbanken die aktiv genutzt werden.
## Eigenschaften von SQLite
SQLite hat einige Eigenschaften, die es wert sind hervorzuheben:
- Die Datenbank besteht nur aus der Library und aus einer Datenbank Datei
- Die Datenbank zu publishen ist einfach, da nur eine DB Datei kopiert werden muss
- Wenn die Datenmenge nicht zu groß ist, entspricht oder übertrifft SQLite meistens in der Geschwindigkeit MySQL (da kein Server overhead, DB Datei kann in den RAM geladen werden etc). Sobald die Datenmengen zu groß werden verlagern sich die Vorteile allerdings zu einerm "richtigen" DBS (dieser Punk ist meistens allerdings erst bei 10 - 15 GB an daten erreicht, somit ist SQLite ausreichen für 90% aller anwendungsfälle)
- SQLite unterstützt basic SQL Features wie Transaktionen, Subqueries, Views + Triggers, etc.
- SQLite ist eine In-Process-DB und keine Client-Server-Architektur => Weniger anfällig für externe Fehler
- Backups sind einfach
## Anwendungen von SQLite
Eigentlich kann man mit SQLite alles erledigen, was man auch mit einem conventionellen DBS erreichen kann. Einige Vorteile hat SQLite allerdings in bestimmten bereichen:
- Embedded Systeme performen besser mit SQLite
- Apps auf Smartphones nutzen oft SQLite
- Verwaltung von Cache-Daten
## Wie verwende ich SQLite
Ziemlich easy:
1. Neue Datei mit der Dateiendung .sqlite3 erstellen
2. Library für die Programmiersprache deiner Wahl runterladen
3. Profit.
## Besonderheiten im vergleich zu anderen DBS
Durch die Files die SQLite nutzt, treten einige anomalien im vergleich zu anderen DBS auf. Die bemerkbarste ist, das Writes nur hintereinander ausgeführt werden können. Auch der ALTER TABLE befehl ist eingeschränkt (nur Spaltenänderungen, Namen ändern). SQLite hat darüberhinaus auch keine Benutzer oder Zugriffsbeschränkung