Краткое описание на Wikipedia:
http://ru.wikipedia.org/wiki/SQLite
Обычная энциклопедическая статья, которая в общих чертах описывает функциональность этой встроенной СУБД. Очень радует лицензия продукта, которая Public Domain.
Официальный сайт SQLite
http://www.sqlite.org/
.NET программисту особенно тут делать нечего. Однако стоит прочитать две статьи в разделе Documentation - "Appropriate Uses For SQLite" и "Distinctive Features" чтобы иметь четкое понимание того, как именно позиционируется данный продукт.
SQLite Management Tools
http://www.sqlite.org/cvstrac/wiki?p=ManagementTools
Утилиты, которые позволяют управлять и выполнять запросы к базе SQLite
SQLite Converter Tools
http://www.sqlite.org/cvstrac/wiki?p=ConverterTools
Утилиты для конвертирования форматов других баз данных в формат SQLite и, наоборот.
SQLite Wrappers
http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers
Библиотеки, которые позволяют обращаться к базе SQLite из различных языков программирования.
System.Data.SQLite
http://sqlite.phxsoftware.com/
Наиболее развитый на мой взглять ADO.NET Data Provider для SQLite.
На официальном сайте можно отметить следующие интересные возможности этого проекта:
- Полная поддержка стека ADO.NET 2.0
- Поддержка .NET, .NET Compact Framework, Mono
- Поддержка ADO.NET Entity Framework, который доступен в .NET 3.5
- Design-Time поддержка в Visual Studio 2008
- Есть возможность шифрования базы данных
Для того чтобы распространять .NET проект, в котором используется база данных SQLite достаточно включить в него сборку System.Data.SQLite.dll, которая сама уже содержит оригинальную библиотеку.
Кроме того, можно использовать альтернативный вариант распространения - включать в дистрибутив приложения сборку System.Data.SQLite.dll из каталога ManagedOnly + оригинальную sqlite3.dll.
[UPDATE 2009-11-26]
Пост вызвыл активную реакцию, чему я безмерно рад. Большое спасибо за фидбек, я получил целый ряд полезных "зацепок", которые в последствии могут пригодится.
Насчет ссылочной целостности в SQLite. Действительно, неделю назад обнаружил в документации что по-умолчанию в SQLite не включены FK Constraints. Да, не фонтан. Пусть даже это и встроенная СУБД, но я бы не отказался от такого полезного механизма контроля.
По ссылке ниже описывается как можно проверить включены ли они или нет и что нужно сделать чтобы их таки включить:
http://www.sqlite.org/foreignkeys.html
Из документации видно, что в будущих релизах FK Constraints могут быть включены.
Плюс еще довольно полезная информация по поводу того, чего SQLite не умеет из SQL92 стандарта:
http://www.sqlite.org/omitted.html
Пока для себя расставил такие приоритеты:
- если размер дистрибутива важен, и можно принебречь остутствием ряда продвинутых фич, то я предпочту SQLite;
- требовать уж очень высокой скорости работы от встроенной СУБД думаю что не стоит;
- Embedded Firebird выгодно отличается от SQLite возможностью с нее "соскочить" на полновесную Firebird. Предполагаю что это будет максимально безполезненно;
- Еще подумываю об необходимости использовании ORM + встроенная БД. Тогда и поставщиков БД можно будет менять как перчатки. Ну или почти...
Показаны сообщения с ярлыком SQLite. Показать все сообщения
Показаны сообщения с ярлыком SQLite. Показать все сообщения
вторник, 14 апреля 2009 г.
Подписаться на:
Сообщения (Atom)