ADO.NET 2.0 SQLite Data Provider
Version 1.0.9 - May 24, 2005
Interop using SQLite 3.21
Written by Robert Simpson (
Released to the public domain, use at your own risk!

This provider was written and verified using the Visual Studio 2005 Beta 2 release.

The latest version can be downloaded here



In order to use the SQLiteFactory and have the SQLite data provider enumerated in the DbProviderFactories methods, you must add the following segment into either your application's app.config or the system's machine.config located in the %SystemRoot%\Microsoft.Net\Framework\v2.xxxx\Config folder:

      <add name="SQLite Data Provider" invariant="System.Data.SQLite" support="3F" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />

Compiling for the Compact Framework

The SQLite.Interop.DLL does not (yet) support a build that includes Windows CE processor architectures.  I am aware of the CE port of SQLite and will be investigating their code to see how best to proceed in that regard.  I am also waiting for the newer version of SQLite to become available which will offer select metadata information and will cause a major redesign of this library to support it.

Development Notes Regarding the SQLite 3 Source Code

Steps for merging the sqlite3 core codebase:

  1. Download the latest sqlite3 source from
  2. Extract the source code to the SQLite.Interop\src directory of this project
  3. Open the src\select.c file.
  4. Add #include "../interop.h" to the top of the file where the other include's are.
  5. Scroll down the select.c file to around line 748.  Change the name of the function static void generateColumnNames to static void _generateColumnNames (note the underscore in front of the name).
  6. Compile it.

Version History

1.09 - May 24, 2005
1.08 Refresh - Mar 24, 2005
1.08 - Mar 11, 2005
1.07 - Mar 5, 2005

1.06 - Mar 1, 2005

1.05 - Feb 25, 2005

1.04 - Feb 24, 2005
1.03 - Feb 23, 2005

1.02 - Feb 21, 2005