Я хотів би використовувати SQLite з C # .Net, але я не можу знайти відповідну бібліотеку. Чи є такий? Офіційний? Чи є інші способи використання SQLite, ніж із обгорткою?
Я хотів би використовувати SQLite з C # .Net, але я не можу знайти відповідну бібліотеку. Чи є такий? Офіційний? Чи є інші способи використання SQLite, ніж із обгорткою?
Відповіді:
З https://system.data.sqlite.org :
System.Data.SQLite - адаптер ADO.NET для SQLite.
System.Data.SQLite розпочав Роберт Сімпсон. Роберт все ще має пільги на здійснення цього сховища, але вже не є активним учасником. Роботи з розробки та обслуговування в основному виконуються командою з розробки SQLite. Команда SQLite прагне підтримувати System.Data.SQLite довгостроково.
"System.Data.SQLite - це оригінальний двигун бази даних SQLite і повний постачальник ADO.NET 2.0, все це об'єднано в єдиний змішаний режим. Це повна замінна версія для початкового sqlite3.dll (ви можете навіть перейменувати його на На відміну від звичайних змішаних збірок, він не залежить від лінкера від .NET часу виконання, тому він може поширюватися незалежно від .NET. "
Він навіть підтримує Mono.
Ось які я можу знайти:
Джерела:
Зараз також є цей параметр: http://code.google.com/p/csharp-sqlite/ - повний порт SQLite до C #.
Люди з sqlite.org взяли на себе розробку постачальника ADO.NET:
Це виделка популярного адаптера ADO.NET 4.0 для SQLite, відомого як System.Data.SQLite. Ініціатор System.Data.SQLite, Роберт Сімпсон, знає про цю вилку, висловив схвалення та надає привілеї в новому сховищі Fossil. Команда розробки SQLite має намір підтримувати System.Data.SQLite рухаючись вперед.
Історичні версії, а також оригінальні форуми підтримки все ще можна знайти на веб-сайті http://sqlite.phxsoftware.com , хоча оновлення цієї версії з квітня 2010 року не було.
Повний список функцій можна знайти на їх вікі . Основні моменти включають
Випущені DLL-файли можна завантажити безпосередньо з сайту .
Я б неодмінно пішов із System.Data.SQLite (як згадувалося раніше: http://sqlite.phxsoftware.com/ )
Він узгоджується з ADO.NET (System.Data. *) І компілюється в єдину DLL. Немає sqlite3.dll - тому що код C SQLite вбудований в System.Data.SQLite.dll. Трохи керованої магії C ++.
sqlite-net - це відкритий код, мінімальна бібліотека, яка дозволяє додаткам .NET і Mono зберігати дані в базах даних SQLite 3 . Більше інформації на сторінці вікі .
Він написаний на C # і призначений для простого складання у ваших проектах. Спочатку він був розроблений для роботи з MonoTouch на iPhone, але виріс для роботи на всіх платформах (Mono для Android, .NET, Silverlight, WP7, WinRT, Azure тощо).
Він доступний як пакунок Nuget , де він є другим найпопулярнішим пакетом SQLite з понад 60 000 завантажень станом на 2014 рік.
sqlite-net був розроблений як швидкий і зручний рівень бази даних. Її дизайн випливає з цих цілей:
Нецілі включають:
Моно йде з обгорткою. https://github.com/mono/mono/tree/master/mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite_2.0 дає код, щоб обернути фактичний dll SQLite ( http: //www.sqlite). org / sqlite-shell-win32-x86-3071300.zip знайдено на сторінці завантаження http://www.sqlite.org/download.html/ ) дружньо .net-способом. Він працює в Linux або Windows.
Це здається найтоншим із усіх світів, мінімізуючи вашу залежність від сторонніх бібліотек. Якби мені довелося робити цей проект з нуля, це я б робив.
Тепер Microsoft пропонує Microsoft.Data.Sqlite як першочергове рішення SQLite для .NET, яке надається у складі ASP.NET Core. Ліцензія - ліцензія Apache, версія 2.0 .
* Відмова від відповідальності: Я на насправді не намагався використовувати це сам ще, але є деяка документація , представлена на Microsoft Docs тут для використання його з .NET Ядром і UWP.
Для таких, як я, які не потребують або не хочуть ADO.NET, тих, кому потрібно запустити код ближче до SQLite, але все ще сумісних з netstandard
(.net Framework, .net core тощо), я створив 100% безкоштовний проект з відкритим кодом під назвою SQLNado (для "Not ADO") доступний на github тут:
https://github.com/smourier/SQLNado
Він доступний як назви тут https://www.nuget.org/packages/SqlNado, але також доступний як єдиний файл .cs, тому його цілком практично використовувати в будь-якому типі проекту C #.
Він підтримує всі функції SQLite при використанні команд SQL, а також підтримує більшість функцій SQLite через .NET:
Версія 1.2 Monotouch включає підтримку System.Data. Більш детальну інформацію ви можете знайти тут: http://monotouch.net/Documentation/System.Data
Але в основному це дозволяє використовувати звичайні шаблони ADO .NET з sqlite.
http://www.devart.com/dotconnect/sqlite/
dotConnect для SQLite - це вдосконалений постачальник даних для SQLite, який базується на технології ADO.NET, щоб представити повноцінне рішення для розробки додатків для баз даних на базі SQLite. Як частина основи розробки додатків баз даних Devart, dotConnect для SQLite пропонує як високопродуктивне підключення до бази даних SQLite, так і ряд інноваційних інструментів і технологій розробки.
dotConnect для SQLite представляє нові підходи до розробки архітектури додатків, підвищує продуктивність та використовує реалізацію додатків бази даних.
Я використовую стандартну версію, вона працює ідеально :)
Обгортка безперешкодних функцій, передбачених бібліотекою sqlite. Остання версія підтримує функції бібліотеки sqlite 3.7.10