Written from scratch on Visual Studio 2005 specifically for ADO.NET,
implementing all the base classes and features recently introduced in the
framework, including automatic transaction enlistment.
Supports the Full and Compact .NET Framework, and native C/C++ development.
100% binary compatible with the original sqlite3.dll.
Full support for Mono via a "managed only" provider that runs
against the official SQLite 3.6.1 or higher library.
Full Entity Framework support (ADO.NET 3.5 SP1).
On the Compact Framework, it is faster than SQL Server Mobile. SQLite's
installed size is a fraction of SQL Mobile's. It uses less memory at
runtime, runs queries faster, and has a smaller database file size as well.
Encrypted database support. Encrypted databases are fully encrypted and
support both binary and cleartext password types.
Visual Studio design-time Support, works with all versions of Visual Studio
2005/2008/2010/2012/2013/2015. It is now unsupported and may not work with
Visual Studio 2017 as the integration/extensibility model has changed
significantly. You can add a SQLite database to the Servers list, design
queries with the Query Designer, drag-and-drop tables onto a Typed DataSet,
etc.
Due to Visual Studio licensing restrictions, the Express Editions can no
longer be supported.
Full SQLite schema editing inside Visual Studio. You can create/edit tables,
views, triggers, indexes, check constraints and foreign keys.
Single file redistributable (except on Compact Framework). The core SQLite
native code and the ADO.NET managed wrapper are combined into one mixed-mode
assembly.
Binaries included for x86, x64, Itanium, and ARM processors.
Itanium processor support not currently included.
DbProviderFactory support.
Full support for ATTACH'ed databases. Exposed as Catalogs in the
schema. When cloning a connection, all attached databases are automatically
re-attached to the new connection.
DbConnection.GetSchema(...) support includes ReservedWords,
MetaDataCollections, DataSourceInformation, DataTypes,
Columns, Tables, Views, ViewColumns,
Catalogs, Indexes, IndexColumns, ForeignKeys and
Triggers.
Enhanced DbDataReader.GetSchemaTable() functionality returns catalog,
namespace and detailed schema information even for complex queries.
Named and unnamed parameters.
Full UTF-8 and UTF-16 support, each with optimized pipelines into the native
database core.
Multiple simultaneous DataReaders (one DataReader per Command however).
Full support for user-defined scalar and aggregate functions, encapsulated
into an easy-to-use base class in which only a couple of overrides are
necessary to implement new SQL functions.
Full support for user-defined collating sequences, every bit as simple to
implement as user-defined functions and uses the same base class.
Full source for the entire engine and wrapper. No copyrights. Public
Domain. 100% free for commercial and non-commercial use.