Каков наилучший способ подключения и использования базы данных sqlite из C #

Я сделал это раньше в C ++, включив sqlite.h, но есть ли такой же простой способ в C #?

Поставщик ADO.NET 2.0 для SQLite имеет более 200 загрузок каждый день, поэтому я думаю, что вы можете использовать его.

Я с Брюсом. Я использую http://system.data.sqlite.org/ с большим успехом. Вот простой пример classа, который я создал:

using System; using System.Text; using System.Data; using System.Data.SQLite; namespace MySqlLite { class DataClass { private SQLiteConnection sqlite; public DataClass() { //This part killed me in the beginning. I was specifying "DataSource" //instead of "Data Source" sqlite = new SQLiteConnection("Data Source=/path/to/file.db"); } public DataTable selectQuery(string query) { SQLiteDataAdapter ad; DataTable dt = new DataTable(); try { SQLiteCommand cmd; sqlite.Open(); //Initiate connection to the db cmd = sqlite.CreateCommand(); cmd.CommandText = query; //set the passed query ad = new SQLiteDataAdapter(cmd); ad.Fill(dt); //fill the datasource } catch(SQLiteException ex) { //Add your exception code here. } sqlite.Close(); return dt; } } 

Существует также пакет NuGet: ansible System.Data.SQLite .

Я использовал это с большим успехом:

http://system.data.sqlite.org/

Бесплатно без ограничений.

(Примечание от обзора: Исходный сайт больше не существует. Вышеуказанная ссылка имеет ссылку, указывающую сайт 404 и содержит всю информацию об оригинале)

–Bruce

Существует список оболочек Sqlite для .Net по адресу http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers . Из того, что я слышал, http://sqlite.phxsoftware.com/ неплохо. Этот конкретный позволяет вам получить доступ к Sqlite через ADO.Net, как и любая другая firebase database.

Также есть этот параметр: http://code.google.com/p/csharp-sqlite/ – полный порт SQLite для C #.

https://github.com/praeclarum/sqlite-net теперь, вероятно, лучший вариант.

Другой способ использования базы данных SQLite в .NET Framework – использовать Fluent-NHibernate .
[Это модуль NET, который обертывает NHibernate (модуль ORM – реляционное сопоставление объектов) и позволяет настраивать NHibernate программно (без файлов XML) с плавным шаблоном.]

Вот краткое описание «Начало работы», как это сделать на C # шаг за шагом:

https://github.com/jagregory/fluent-nhibernate/wiki/Getting-started

Он включает исходный код в качестве проекта Visual Studio.

Моно поставляется с оберткой, используйте их!

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.

Это кажется самым тонким из всех миров, сводя к минимуму вашу зависимость от сторонних библиотек. Если бы мне пришлось делать этот проект с нуля, я бы это сделал.

  • Исключение блокировки базы данных SQLite
  • Рекомендации по миграции базы данных в приложении для Sqlite
  • Как вы применяете ограничения внешнего ключа в SQLite через Java?
  • Обработка баз данных перестала работать на Android 2.2.1 (Desire HD 1.72.405.3)
  • Экспорт базы данных SQLite в файл csv в android
  • Использование шаблона проектирования Singleton для SQLiteDatabase
  • Получить последнее вставленное значение из базы данных sqlite Android
  • Как реализовать Экспорт sqlite В файл excel / csv в android?
  • ALTER COLUMN в sqlite
  • System.Data.SQLite Close () не освобождает файл базы данных
  • Скорость вставки SQLite замедляется по мере увеличения количества записей из-за индекса
  • Interesting Posts
    Давайте будем гением компьютера.