What is C# Connection String Format in SQLite?

Microsoft created the computer language C#, which is widely used for creating applications. Connectivity to databases is an essential aspect of application development, and C# is no exception. SQLite is a popular, lightweight database management system that can be integrated into C# applications.

In this article, we will discuss the C# SQLite connection string format.

What is a Connection String?

A text string known as a connection string explains the process to connect to a database. It includes every piece of data needed for the program to establish a connection to the database. Depending on the database being utilized, the connection string’s syntax changes. In C# programming, a connection string is used to establish a connection to an SQLite database.

C# SQLite Connection String

The SQLite connection string has the following format:

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

The database file containing the data that needs to be accessed is named according to the Data Source parameter. Since it specifies where the SQLite database is located, this parameter is the most crucial component of the connection string.

The current version of the SQLite database is specified by the Version option. This parameter is crucial because it enables the application to modify its behavior in accordance with the SQLite version being utilized.

Optional Parameters of C# SQLite Connection String

In addition to the Data Source and Version parameters, there are a few optional parameters that can be included in the connection string. These parameters are not necessary for connecting to the database but can provide useful information to the application. These additional parameters are listed below:

  • Password: The password necessary to access the database is specified by this option. If the database is not password-protected, this parameter can be omitted from the connection string.
  • Pooling: The program can reuse database connections with the help of the technique known as connection pooling, which can enhance performance. In the absence of this argument, connection pooling is by default turned off.
  • Cache Size: The maximum size (in bytes) of the database cache is specified by the cache size parameter. The cache is used to improve the performance of the database by reducing the number of disk reads and writes. The default cache size is applied if this argument is left unspecified.
  • Read Only: This parameter indicates whether read-only access to the database is possible. If this parameter is set to true, the application can only read from the database; it cannot write to it.
  • Fail If Missing: This parameter specifies whether the application should fail if the specified database file does not exist. If this parameter is set to true, the application will throw an exception if the database file is not found.
  • Journal Mode: This parameter specifies the journal mode that is used by the database. In the event of a power outage or a system crash, the journal is utilized to guarantee the accuracy of the database.
  • Synchronous: This parameter specifies the level of synchronization that is used when writing to the database. The higher the level of synchronization, the more reliable the database will be, but the slower the performance will be.
  • Foreign Keys: This parameter specifies whether foreign key constraints are enforced. Foreign key constraints will be enforced by SQLite if this parameter is set to true.

The Connection String with Optional Parameters can be specified like this:

Data Source=c:\mydb.db;Version=3;Password=myPassword; Pooling=True;Max Pool Size=100; Cache Size=2000; Read Only=True; FailIfMissing=True; Journal Mode=Off; Synchronous=Full; foreign keys=true;

Connection String using a String Literal

The SQLite connection string can be constructed using either a string literal or a string variable. Here is an example of how to construct the connection string using a string literal:

string connectionString = "Data Source=mydatabase.db ; Version=3 ; Password=myPassword ; Cache Size=2000";

In this example, the connection string specifies that the database file is named mydatabase.db, the version of SQLite is 3, the password is myPassword, and the cache size is 2000 bytes.

Connection String Using a String Variable

If you prefer to use a string variable to construct the connection string, you can use the following format:

string dataSource = "mydatabase.db";
int version = 3;
string password = "myPassword";
int cacheSize = 2000;

string connectionString = string.Format("Data Source={0};Version={1};Password={2};Cache Size={3}", dataSource, version, password, cacheSize);

In this example, the connection string is constructed using a string variable for each parameter. The string.Format method is used to replace the placeholders {0}, {1}, {2}, and {3} with the corresponding variable values.


The C# SQLite connection string format is a critical component of C# database programming. It specifies the parameters necessary to establish a successful connection to the database. These parameters include the provider, data source, version, extra keywords, and others. This article will help users understand the basic format for C# connection string, allowing them to effectively work with SQLite databases in their C# applications.

About the author

Hiba Shafqat

I am a Computer Science student and a committed technical writer by choice. It is a great pleasure to share my knowledge with the world in which I have academic expertise.