Chciałbym użyć SQLite z poziomu C # .Net, ale nie mogę znaleźć odpowiedniej biblioteki. Czy jest jeden Oficjalny? Czy są inne sposoby korzystania z SQLite niż z opakowania?
Chciałbym użyć SQLite z poziomu C # .Net, ale nie mogę znaleźć odpowiedniej biblioteki. Czy jest jeden Oficjalny? Czy są inne sposoby korzystania z SQLite niż z opakowania?
Odpowiedzi:
Od https://system.data.sqlite.org :
System.Data.SQLite to adapter ADO.NET dla SQLite.
System.Data.SQLite został uruchomiony przez Roberta Simpsona. Robert nadal ma uprawnienia do zatwierdzania tego repozytorium, ale nie jest już aktywnym współtwórcą. Prace programistyczne i konserwacyjne są obecnie w większości wykonywane przez zespół programistów SQLite. Zespół SQLite jest zaangażowany w długoterminową obsługę System.Data.SQLite.
„System.Data.SQLite jest oryginalnym silnikiem bazy danych SQLite i kompletnym dostawcą ADO.NET 2.0 zintegrowanym w jednym zestawie trybu mieszanego. Jest to kompletny zamiennik oryginalnego pliku sqlite3.dll (możesz nawet zmienić jego nazwę na sqlite3.dll). W przeciwieństwie do normalnych zestawów mieszanych, nie ma zależności linkera od środowiska uruchomieniowego .NET, więc może być dystrybuowany niezależnie od .NET. ”
Obsługuje nawet Mono.
Oto te, które mogę znaleźć:
Źródła:
Dostępna jest również ta opcja: http://code.google.com/p/csharp-sqlite/ - kompletny port SQLite do C #.
Ludzie z sqlite.org przejęli rozwój dostawcy ADO.NET:
To jest rozwidlenie popularnego adaptera ADO.NET 4.0 dla SQLite znanego jako System.Data.SQLite. Pomysłodawca System.Data.SQLite, Robert Simpson, jest świadomy tego rozwidlenia, wyraził swoją zgodę i ma uprawnienia do zatwierdzania nowego repozytorium Fossil. Zespół programistów SQLite zamierza kontynuować rozwój System.Data.SQLite.
Wersje historyczne, a także oryginalne fora wsparcia, można nadal znaleźć na stronie http://sqlite.phxsoftware.com , chociaż od kwietnia 2010 r. Nie było żadnych aktualizacji tej wersji.
Pełna lista funkcji znajduje się na ich wiki . Najważniejsze to
Wydane biblioteki DLL można pobrać bezpośrednio ze strony .
Zdecydowanie wybrałbym System.Data.SQLite (jak wcześniej wspomniano: http://sqlite.phxsoftware.com/ )
Jest spójny z ADO.NET (System.Data. *) I jest skompilowany w pojedynczą bibliotekę DLL. Brak sqlite3.dll - ponieważ kod C SQLite jest osadzony w System.Data.SQLite.dll. Trochę zarządzanej magii C ++.
sqlite-net to otwarta biblioteka, minimalna biblioteka pozwalająca aplikacjom .NET i Mono na przechowywanie danych w bazach danych SQLite 3 . Więcej informacji na stronie wiki .
Jest napisany w C # i ma być po prostu kompilowany z twoimi projektami. Po raz pierwszy został zaprojektowany do współpracy z MonoTouch na iPhonie, ale dorósł do pracy na wszystkich platformach (Mono dla Androida, .NET, Silverlight, WP7, WinRT, Azure itp.).
Jest dostępny jako pakiet Nuget , gdzie jest drugim najpopularniejszym pakietem SQLite z ponad 60 000 pobrań od 2014 roku.
sqlite-net został zaprojektowany jako szybka i wygodna warstwa bazy danych. Jego konstrukcja wynika z następujących celów:
Do celów innych należą:
Mono ma opakowanie. https://github.com/mono/mono/tree/master/mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite_2.0 daje kod do zawijania faktycznej biblioteki DLL SQLite ( http: //www.sqlite. org / sqlite-shell-win32-x86-3071300.zip znaleziony na stronie pobierania http://www.sqlite.org/download.html/ ) w przyjazny dla środowiska .net. Działa w systemie Linux lub Windows.
To wydaje się najcieńsze ze wszystkich światów, minimalizując twoją zależność od bibliotek stron trzecich. Gdybym musiał wykonać ten projekt od zera, to właśnie tak bym to zrobił.
Microsoft zapewnia teraz Microsoft.Data.Sqlite jako własne rozwiązanie SQLite dla platformy .NET, które jest dostarczane jako część programu ASP.NET Core. Licencja jest licencją Apache, wersja 2.0 .
* Uwaga: Nie rzeczywiście spróbował wykorzystać ten sam jeszcze, ale jest jakaś dokumentacja Microsoft Docs tutaj do używania z .NET Core i UWP.
Dla takich jak ja, którzy nie potrzebują lub nie chcą ADO.NET, ci, którzy muszą uruchamiać kod bliżej SQLite, ale nadal kompatybilny z netstandard
(.NET Framework, .net core itp.), Zbudowałem 100% darmowy projekt open source o nazwie SQLNado (dla „Not ADO”) dostępny na github tutaj:
https://github.com/smourier/SQLNado
Jest dostępny jako nuget tutaj https://www.nuget.org/packages/SqlNado, ale jest również dostępny jako pojedynczy plik .cs, więc jest całkiem praktyczny w użyciu w każdym typie projektu C #.
Obsługuje wszystkie funkcje SQLite podczas korzystania z poleceń SQL, a także obsługuje większość funkcji SQLite za pośrednictwem platformy .NET:
Wersja 1.2 Monotouch zawiera obsługę System.Data. Więcej informacji można znaleźć tutaj: http://monotouch.net/Documentation/System.Data
Ale w zasadzie pozwala na użycie zwykłych wzorców ADO .NET z sqlite.
http://www.devart.com/dotconnect/sqlite/
dotConnect dla SQLite to ulepszony dostawca danych dla SQLite, który wykorzystuje technologię ADO.NET, aby przedstawić kompletne rozwiązanie do tworzenia aplikacji bazodanowych opartych na SQLite. Jako część środowiska programowania aplikacji bazodanowych Devart, dotConnect for SQLite oferuje zarówno wysoką wydajność natywnej łączności z bazą danych SQLite, jak i szereg innowacyjnych narzędzi i technologii programistycznych.
dotConnect dla SQLite wprowadza nowe podejścia do projektowania architektury aplikacji, zwiększa produktywność i wspomaga implementację aplikacji bazodanowych.
Używam wersji standardowej, działa idealnie :)
Ogołocone opakowanie funkcji dostarczone przez bibliotekę sqlite. Najnowsza wersja obsługuje funkcje udostępnionej biblioteki sqlite 3.7.10