Connection strings for SQLite


Type .NET Framework Class Library
Usage System.Data.SQLite.SQLiteConnection
Manufacturer SQLite


Data Source=c:\mydb.db;Version=3;

Version 2 is not supported by this class library.


In-Memory Database

An SQLite database is normally stored on disk but the database can also be stored in memory. Read more about SQLite in-memory databases here.

Data Source=:memory:;Version=3;New=True;

Using UTF16

Data Source=c:\mydb.db;Version=3;UseUTF16Encoding=True;

With password

Data Source=c:\mydb.db;Version=3;Password=myPassword;

Using the pre 3.3x database format

Data Source=c:\mydb.db;Version=3;Legacy Format=True;

With connection pooling

Connection pooling is not enabled by default. Use the following parameters to control the connection pooling mechanism.

Data Source=c:\mydb.db;Version=3;Pooling=False;Max Pool Size=100;

Read only connection

Data Source=c:\mydb.db;Version=3;Read Only=True;

Using DateTime.Ticks as datetime format

Data Source=c:\mydb.db;Version=3;DateTimeFormat=Ticks;

The default value is ISO8601 which activates the use of the ISO8601 datetime format


Store GUID as text

Normally, GUIDs are stored in a binary format. Use this connection string to store GUIDs as text.

Data Source=c:\mydb.db;Version=3;BinaryGUID=False;

Note that storing GUIDs as text uses more space in the database.


Specify cache size

Data Source=c:\mydb.db;Version=3;Cache Size=2000;

The Cache Size value measured in bytes


Specify page size

Data Source=c:\mydb.db;Version=3;Page Size=1024;

The Page Size value measured in bytes


Disable enlistment in distributed transactions

Data Source=c:\mydb.db;Version=3;Enlist=N;

Disable enlistment in distributed transactions

Data Source=c:\mydb.db;Version=3;Enlist=N;

Disable create database behaviour

If the database file doesn't exist, the default behaviour is to create a new file. Use the following parameter to raise an error instead of creating a new database file.

Data Source=c:\mydb.db;Version=3;FailIfMissing=True;

Limit the size of database

Data Source=c:\mydb.db;Version=3;Max Page Count=5000;

The Max Page Count is measured in pages. This parameter limits the maximum number of pages of the database.


Disable the Journal File

This one disables the rollback journal entirely.

Data Source=c:\mydb.db;Version=3;Journal Mode=Off;

Persist the Journal File

This one blanks and leaves the journal file on disk after a commit. Default behaviour is to delete the Journal File after each commit.

Data Source=c:\mydb.db;Version=3;Journal Mode=Persist;

Controling file flushing

Data Source=c:\mydb.db;Version=3;Synchronous=Full;

Full specifies a full flush to take action after each write. Normal is the default value. Off means that the underlying OS flushes I/O's.


Finisar.SQLite ADO.NET Data Provider

Type .NET Framework Class Library
Usage Finisar.SQLite.SQLiteConnection
Manufacturer Finisar.SQLite


Data Source=c:\mydb.db;Version=3;

The "Version" key can take value "2" for SQLite 2.x (default) or value "3" for SQLite 3.x


SQLite Version 2.X

Data Source=c:\mydb.db;Version=2;

Create a new database

Data Source=c:\mydb.db;Version=3;New=True;

Using compression

Data Source=c:\mydb.db;Version=3;Compress=True;

Specifying Cache Size

The Cache Size value represents the amount of data pages that are held in memory. Try increase this value for speed improvements but don't forget to keep track of the applications memory usage.

Data Source=c:\mydb.db;Version=3;Cache Size=3000;


Data Source=c:\mydb.db;Version=3;UTF8Encoding=True;

UTF 16

Data Source=c:\mydb.db;Version=3;UTF16Encoding=True;

SQLite3 ODBC Driver

Type .NET Framework Class Library
Manufacturer SQLite


DRIVER=SQLite3 ODBC Driver;Database=c:\mydb.db;LongNames=0;Timeout=1000;NoTXN=0;

.NET Framework Data Provider for ODBC

Type .NET Framework Wrapper Class Library
Usage System.Data.Odbc.OdbcConnection
Manufacturer Microsoft

Use an ODBC driver from .NET

Driver={any odbc driver's name};OdbcKey1=someValue;OdbcKey2=someValue;

See the respective ODBC driver's connection strings options. The .net OdbcConnection will just pass on the connection string to the specified ODBC driver. Read more here.