Datenbank-Funktionalität mit WPF-Anwendung: SQLite, SQL CE, andere? [geschlossen]
-
09-06-2019 - |
Frage
Ich möchte eine WPF-Anwendung mit Datenbank-Funktionalität erweitern. Welche Datenbank-Engine würden Sie vorschlagen, und warum? SQLite, SQL CE, andere?
Lösung
In Abhängigkeit von den Anwendungen verwenden, Ich würde SQL Lite empfehlen mit , weil es Sie erfordert keine andere Software (SQL CE oder Express, etc. in der Regel würde eine separate erfordern Installation) zu installieren.
Eine Liste der wichtigsten Vorteile für SQL Lite vom Provider Link am Ende dieses Beitrags:
SQLite ist eine kleine C-Bibliothek, die implementiert eine in sich geschlossene, bündig, Null-Konfiguration SQL Datenbank-Engine. Eigenschaften umfassen:
- Null-Konfiguration - keine Installation oder Verwaltung erforderlich.
- die meisten SQL92 Implementiert. (Eigenschaften nicht unterstützt)
- Eine komplette Datenbank in einem gespeichert Einzelplattendatei.
- Datenbank-Dateien können frei geteilt zwischen Maschinen mit unterschiedlichen Byte Bestellungen.
- Unterstützt Datenbanken bis zu 2 Terabyte (2 ^ 41 Bytes) in der Größe.
- Kleine Code-Fußabdruck: weniger als 30K Zeilen C-Code, weniger als 250 KB Coderaum (gcc auf i486)
- Schneller als populärer Client / Server Datenbank-Engines für die gängigsten Operationen.
- Einfache, leicht zu bedienen API.
- Autarke: keine Außen Abhängigkeiten.
- Quellen sind in der Public Domain. Verwenden Sie für einen bestimmten Zweck.
Da Sie WPF verwenden Ich gehe davon aus können Sie mindestens .NET 3.0 verwenden. Ich würde dann empfehlen auf .NET 3.5 SP1 gehen (sames Größe wie .NET 3.5 enthält aber eine Reihe von Leistungsverbesserungen), die LINQ enthält.
Wenn SQLite, aber würden Sie den folgenden SQLite Provider verwenden möchten, die LINQ-Unterstützung bieten sollte: Ein Open-Source ADO .NET-Provider für die SQLite-Datenbank-Engine
Andere Tipps
Ich benutzen SQL Compact Edition mit meiner WPF-Anwendung und ich bin glücklich mit meiner Entscheidung. Alles funktioniert einfach (da WPF und SQLCE sind beide MS sie spielen gut zusammen), und die Installation der Laufzeit ist klein genug und glatt genug für meine Bedürfnisse. Ich erstellt und modifiziert, um die Datenbank durch Visual Studio.
Nur eine abweichende Meinung zu werfen, haben wir für das letzte Jahr SQL Compact Edition wurden verwenden und mit im Allgemeinen zufrieden. Die Konfiguration ist Kuchen und verhält sich sehr ähnlich wie bei einer regulären MS SQL-Datenbank. Es gibt Dinge fehlen, wie Trigger und Stored Procedures, aber SQL 3.5 CE hat so gut wie alles, was wir brauchen würden. Es geht um 2 MB .dlls zu installieren. Es bietet Datenbankverschlüsselung, Transaktionen und unterstützt VS des typisierte Datasets Designer (3.1 einige Probleme hatte, aber CE 3.5 ist groß!).
SQL CE DLLs können in Ihre eigene Anwendung verpackt werden und brauchen nicht eine separate installieren. Aber MS bietet eine Standard-Paket installieren, wenn Sie nicht wollen, um Setup lernen ... etc.
Mehr ot es, SQL CE unterstützt private Bereitstellung.
SQLite ist ein wirklich schönes Produkt, obwohl ich Features von PostgreSQL verpassen. Es gibt noch andere, vor allem Nicht-SQL-Datenbanken Sie können wie Berkeley DB betrachten.
/ Allan
Ich würde zustimmen, dass SQLite ist der Weg zu gehen. Subsonic 2.1 enthält nun SQLite Unterstützung auch.