SQLite Einführung und Ressourcen – Eingebettetes Datenbanksystem

Offenlegung: Ihr Support hilft dabei, die Website am Laufen zu halten! Für einige der auf dieser Seite empfohlenen Dienstleistungen erhalten wir eine Empfehlungsgebühr.


SQLite ist ein relationales Datenbankverwaltungssystem (RDBMS), das in eine Programmierbibliothek eingebettet ist. Im Gegensatz zu anderen gängigen Datenbanksystemen ist SQLite kein Client-Server-Datenbankmodul und verfügt nicht über einen separaten Serverprozess.

SQLite-Quellcode wird gemeinfrei verteilt, sodass er sowohl für kommerzielle als auch für private Zwecke kostenlos verwendet werden kann.

Diese Tatsachen machen SQLite zu einer sehr beliebten Wahl als Embedded-Datenbank-Softwarelösung. SQLite ist heute die am weitesten verbreitete Datenbank-Engine, die von unzähligen Anwendungen und Plattformen verwendet wird.

Kurze Geschichte

SQLite wurde ursprünglich im Frühjahr 2000 von D Richard Hipp während seiner Zeit beim Rüstungsgiganten General Dynamics entwickelt. Zu dieser Zeit arbeitete Hipp am Software-Design für Lenkwaffen-Zerstörer der United States Navy.

Das Hauptziel der SQLite-Entwicklung bestand darin, die Ausführung einer Anwendung zu ermöglichen, ohne ein Datenbankverwaltungssystem zu installieren oder einen Datenbankadministrator zu verpflichten, dh die Datenbank in die Anwendung einzubetten, die sie verwendet.

SQLite Version 1.0 wurde im August 2000 veröffentlicht. Der Speicher basiert auf dem GNU Database Manager (gdbm) -Format. In Version 2.0 wurde anstelle des GDBM eine benutzerdefinierte B-Tree-Speicherimplementierung eingeführt und Transaktionsfunktionen hinzugefügt. In SQLite Version 3.0 wurden Funktionen zur Typisierung und Internationalisierung von Manifesten sowie viele andere Verbesserungen eingeführt.

SQLite-Funktionen und -Design

Da die SQLite-Bibliothek ein integraler Bestandteil der Anwendung ist, die sie verwendet, verwendet die Anwendung einfache Funktionsaufrufe, um mit SQLite zu kommunizieren, wodurch die Latenz verringert wird. Die gesamte Datenbank wird als einzelne plattformübergreifende Datei auf dem Hostcomputer gespeichert.

Dieser Entwurfsansatz erfordert weniger Konfiguration als Client-Server-Datenbanken, daher wird SQLite auch als Zero-Conf bezeichnet.

Mehrere Prozesse oder Threads können gleichzeitig auf die Datenbank zugreifen, und mehrere Leseanforderungen können parallel verarbeitet werden. Schreibzugriff auf die Datenbank kann nur gewährt werden, wenn keine anderen Anforderungen bearbeitet werden. Diese Einschränkung ergibt sich aus der Tatsache, dass SQLite Dateisystemberechtigungen und Sperren für die Zugriffssteuerung verwendet, sodass die gesamte Datenbank während des Schreibens gesperrt wird. SQLite Version 3.7 führt die Write-Ahead-Protokollierung (WAL) ein, um gleichzeitiges Lesen und Schreiben zu ermöglichen. Aufgrund dieser Tatsachen ist SQLite nicht ideal für schreibintensive Bereitstellungen und Aufgaben geeignet.

SQLite implementiert den größten Teil des SQL-92-Standards und verwendet PostgreSQL als Referenzplattform. SQLite unterstützt komplexe Abfragen, unterstützt jedoch nur eingeschränkt die Funktion ALTER TABLE, da Spalten nicht geändert oder gelöscht werden können.

SQLite verwendet auch ein anderes System, was für ein SQL-kompatibles Datenbanksystem ungewöhnlich ist. Anstatt wie in den meisten SQL-Datenbanksystemen einen Typ einer Spalte zu deklarieren, werden Typen einzelnen Werten zugewiesen. SQLite ist schwach typisiert. Sie können beispielsweise einen Zeichenfolgenwert in eine Ganzzahlspalte einfügen. Diese Funktion macht die SQLite flexibler, gibt aber auch Anlass zur Kritik, da ihr die Datenintegritätsfunktionen fehlen, die von den statisch typisierten Spalten in anderen SQL-DBMs bereitgestellt werden.

Transaktionen in SQLite sind konsistent und dauerhaft, auch nach Systemabstürzen oder Stromausfällen. SQLite unterstützt Datenbanken mit Terabyte-Größe und Zeichenfolgen und Blobs mit Gigabyte-Größe, während ein kleiner Code-Footprint von weniger als 500 KB vollständig konfiguriert bleibt. SQLite verfügt über eine einfache und benutzerfreundliche eigenständige API ohne externe Abhängigkeiten.

SQLite ist eine plattformübergreifende Lösung, die für zahlreiche Plattformen und Programmiersprachen wie Android, BSD, iOS, Linux, Mac, Solaris, VxWorks, Windows und C, C #, C ++, Clipper, Curl, Elixier, F #, Haskell, verfügbar ist. Java, JavaScript, Objective-C, OCaml, Perl, PHP, Python, Ruby, Schema, Smalltalk, Swift usw. Es ist auch einfach, SQLite auf andere Systeme zu portieren, da es in ANSI-C geschrieben ist, das relativ einfach zu kompilieren ist.

Verwenden von SQLite

SQLite ist aufgrund seiner effizienten Nutzung von Speicher und Speicherplatz eine beliebte Wahl für Datenbankmodule in Mobiltelefonen, Tablets, MP3-Playern, Set-Top-Boxen und anderen eingebetteten Geräten.

Eine weitere beliebte Verwendung von SQLite ist die Verwendung als Anwendungsdateiformat. Anstatt ein proprietäres Dateiformat zum Speichern von Informationen aus einer Anwendung zu verwenden, verwenden Entwickler häufig eine SQLite-Datenbank. Diese Vorgehensweise spart Zeit und Mühe, da kein benutzerdefinierter Datei-Parser erstellt und Fehler behoben werden müssen und die Daten auf verschiedenen Plattformen leicht zugänglich sind.

Da SQLite keine Konfiguration erfordert und Daten in normalen Festplattendateien speichert, wird es häufig auch als Datenbank für kleine und mittlere Websites verwendet.

Einige der Anwendungen, die SQLite verwenden, umfassen die Browser Google Chrome, Opera, Safari und Android, Mozilla Firefox und Thunderbird, Skype, Adobe Lightroom und Adobe Reader usw..

SQLite ist einfach von der offiziellen SQLite-Website zu erhalten und zu installieren, sodass Sie es ausprobieren können. Wenn Ihre Arbeit die Entwicklung in einigen der beschriebenen Verwendungsszenarien umfasst, benötigen Sie wahrscheinlich früher oder später SQLite, da es weiterhin sehr beliebt und frei verfügbar ist.

Was ist mit der Unterstützung von SQLite??

Kostenlose Unterstützung für SQLite ist über die öffentliche Mailingliste verfügbar. Sie können die Mailinglistenarchive durchsuchen oder sich als Mailinglistenmitglied anmelden.

Es gibt andere erweiterte Supportoptionen, wie das jährliche Wartungsabonnement (AMS) oder die Vereinbarung über den technischen Support, die jedoch nicht kostenlos sind. Weitere Informationen finden Sie im Abschnitt Professional Support der SQLite-Website.

SQLite-Ressourcen

Es gibt viele Ressourcen für SQLite, die online verfügbar sind, da es sehr beliebt ist und zahlreiche Anwendungen hat. Das Erlernen von SQLite sollte mit diesen Qualitätsressourcen kein Problem sein:

  • Die offizielle SQLite-Dokumentation ist sehr detailliert und Sie können dort viele nützliche Artikel und Inhalte finden.
  • Die SQLiteTutorial.net-Website ist ein großartiges Tutorial, das alles abdeckt, was Sie über SQLite durch umfangreiche praktische Übungen wissen müssen.
  • Tutorials Point SQLite Tutorial ist sehr detailliert und deckt alles von der SQLite-Installation bis zur erweiterten Verwendung ab. Dieses Tutorial gibt Ihnen einen schnellen Einstieg in SQLite und macht Sie mit der SQLite-Programmierung vertraut.
  • Eine Einführung in SQLite auf YouTube ist ein GoogleTechTalk von Richard Hipp. Dieser Vortrag bietet einen schnellen Überblick über SQLite, seinen Verlauf, seine Stärken und Schwächen und beschreibt Situationen, in denen es viel nützlicher ist als eine herkömmliche Client / Server-Datenbank.

SQLite-Bücher

Bücher über SQLite sind ebenfalls beliebt, und Sie haben eine gute Auswahl an Titeln zur Verfügung. Wir empfehlen, zuerst die kostenlosen Online-Ressourcen durchzugehen, da sie wirklich gut sind und Sie möglicherweise doch kein Buch benötigen. Wenn Sie das Gefühl eines Buches bevorzugen, haben wir einige herausgegriffen:

  • Der endgültige Leitfaden zu SQLite (2006) von Mike Owens: Dies ist das erste Buch, das sich vollständig mit der beliebten eingebetteten Open-Source-Datenbank SQLite befasst. Das Buch dient sowohl als ideales Tutorial als auch als Nachschlagewerk.
  • Verwenden von SQLite (2010) von Jay Kreibich: Mit SQLite erfahren Sie, wie Sie eine datenbankgestützte Anwendung entwickeln, die in Größe und Komplexität überschaubar bleibt. Mit diesem Buch erhalten Sie einen Crashkurs in Datenmodellierung, lernen den SQLite-Dialekt der SQL-Datenbanksprache kennen und vieles mehr.

Fazit

Zusammenfassend lässt sich sagen, dass SQLite weit verbreitet und ausgereift ist und dank der Fülle an kostenlosen Online-Ressourcen relativ einfach beherrscht werden kann.

Es hat einige offensichtliche Einschränkungen, die sich aus den allgemeinen Prinzipien hinter seinem Design ergeben. Dies ist jedoch der springende Punkt bei SQLite – es soll schlank sein und Ihre Datenbankanforderungen erfüllen, ohne viele Ressourcen zu beanspruchen.

Weiterführende Literatur und Ressourcen

Wir haben weitere Anleitungen, Tutorials und Infografiken zum Thema Codierung und Entwicklung:

  • SQL-Ressourcen: Unsere allgemeine SQL-Ressource, die für alle Entwickler relationaler Datenbanken von entscheidender Bedeutung ist.
  • MySQL Einführung und Ressourcen: Ein weiteres sehr beliebtes Datenbanksystem.
  • PostgreSQL Einführung und Ressourcen: SQLite ist ein beliebtes Datenbanksystem für sich und basiert teilweise darauf.

Ultimativer Leitfaden für Webhosting

Lesen Sie unseren ultimativen Leitfaden zum Webhosting. Es wird alles erklären, was Sie wissen müssen, um eine fundierte Entscheidung zu treffen.

Ultimativer Leitfaden für Webhosting
Ultimativer Leitfaden für Webhosting

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Adblock
    detector