Каков наилучший способ подключения и использования базы данных sqlite из C #
Я сделал это раньше в C ++, включив sqlite.h, но есть ли такой же простой способ в C #?
- Импорт CSV в SQLite
- Где лучший учебник по SQLite 3 для iPhone-SDK?
- Нечувствительный к регистру и нечувствительный, как в SQLite
- Заполнение Spinner из базы данных SQLite Android
- Как получить столбец datetime в SQLite с Objective C
- Sqlite над сетевым ресурсом
- Как избежать специальных символов, например, в sqlite в android
- Escape символ одиночной кавычки для использования в SQLite-запросе
Поставщик 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.
Это кажется самым тонким из всех миров, сводя к минимуму вашу зависимость от сторонних библиотек. Если бы мне пришлось делать этот проект с нуля, я бы это сделал.