DEV Community

Cover image for C# SQLite Database Connection
ahoNerd
ahoNerd

Posted on • Originally published at ahonerd.com

C# SQLite Database Connection

Pada catatan kali ini akan kita bahas mengenai contoh penggunaan SQLite Database pada C#.

Visual Studio Template

Template yang akan digunakan untuk mencoba SQLite adalah Console App. Cara membuat console app project pada Visual Studio dapat dilihat pada link berikut: Creating New Console App Project in Visual Studio Code 2022.

Install System.Data.SQLite

Untuk dapat menggunakan SQLite pada Visual studio kita perlu menambahkan library dengan menggunakan NuGet Package Manager, dengan langkah-langkah seagai berikut:

  1. Untuk langsung menambahkan library pada project yang tengah aktif, dapat dilakukan melalui menu ProjectManage Nuget Packages... Manage Nuget Packages
  2. Pada tab Browse cari package dengan kata kunci system.data.sqlite kemudian pilih sesuai gambar lalu install dan tunggu beberapa saat untuk proses instalasinya Browse Package
  3. Setelah proses instalasi selesai, maka akan muncul dialog seperti gambar berikut, lalu tekan OK Preview Changes
  4. Setelah itu akan muncul juga dialog konfirmasi lisensi penggunaan package, lalu tekan I Accept License Acceptance
  5. Untuk memastikan bahwa package sudah berhasil ditambahkan ke dalam project, dapat dilakukan pengecekan pada Solution Explorer, sebagai berikut: Solution Explorer

Test Connection

Untuk mencoba koneksi ke SQLite, dapat menggunakan code berikut:

Example Code

Code berikut akan menampilkan versi dari SQLite.

using System.Data.SQLite;
string stm = "SELECT SQLITE_VERSION()";
using var con = new SQLiteConnection("Data Source=:memory:");
con.Open();
using SQLiteCommand cmd = con.CreateCommand();
cmd.CommandText = stm;
object obj = cmd.ExecuteScalar();
string version = obj.ToString();
Console.WriteLine($"SQLite version: {version}");
con.Close();
view raw test.cs hosted with ❤ by GitHub

Output

Output

Create Table and Add Data

Contoh pembuatan table dan penambahan data.

Example Code

Code berikut akan membuat database dengan nama fruits.db dan membuat table fruits di dalamnya, lalu menambah sample data Apple dan Orange.

using System.Data.SQLite;
string cs = @"URI=file:fruits.db";
using var con = new SQLiteConnection(cs);
con.Open();
using var cmd = new SQLiteCommand(con);
cmd.CommandText = @"CREATE TABLE IF NOT EXISTS fruits(id INTEGER PRIMARY KEY, name TEXT, price INT)";
cmd.ExecuteNonQuery();
cmd.CommandText = "INSERT INTO fruits(name, price) VALUES('Apple', 123)";
cmd.ExecuteNonQuery();
cmd.CommandText = "INSERT INTO fruits(name, price) VALUES('Orange', 234)";
cmd.ExecuteNonQuery();
con.Close();
view raw write.cs hosted with ❤ by GitHub

Read Data

Contoh pembacaan data dari database.

Example Code

Code berikut akan membaca database dengan nama fruits.db yang sudah dibuat sebelumnya.

using System.Data.SQLite;
string cs = @"URI=file:fruits.db";
using var con = new SQLiteConnection(cs);
con.Open();
string stm = "SELECT * FROM fruits LIMIT 50";
using var cmd = new SQLiteCommand(stm, con);
using SQLiteDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
Console.WriteLine($"{rdr.GetInt32(0)}. {rdr.GetString(1)}:\t{rdr.GetInt32(2)}");
}
con.Close();
view raw read.cs hosted with ❤ by GitHub

Output

Output

Database Location

Database kita definisikan pada string cs = @"URI=file:fruits.db";, sehingga akan tersimpan di dalam project pada folder berikut:

\bin\Debug\net6.0
Enter fullscreen mode Exit fullscreen mode

Custom Location

Untuk menyimpan database di tempat lain, cukup mengubah baris string cs = @"URI=file:fruits.db"; menjadi misalnya string cs = @"URI=file:D:\Data\test.db";, sehingga database akan tersimpan di partisi D pada folder Data.

Reference

system.data.sqlite.org

Top comments (0)

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay