Visual StudioでSQLiteを使ったWindowsフォームアプリ作成例を共有します。
・プロジェクト作成
Windows フォームアプリケーション(.NET Framework)
名前:TestViewer
場所:C:\
ソリューション名:TestViewer
・System.Data.SQLiteパッケージインストール
ソリューションエクスプローラーからプロジェクト名を右クリックして「NuGet パッケージの管理」を選択する。
参照を選択して、「System.Data.SQLite」を選択して、インストールする。
・フォームデザイン
Button1、Button2を追加する。
・csファイルのインクルートに以下を追加する。
using System.IO;
using System.Data.SQLite;
・デザインのButton1をクリックして、csファイルで以下を追加する。
private void button1_Click(object sender, EventArgs e)
{
//DB作成
String dbname = "testviewer.db";
if (File.Exists(dbname) == false) {
using (SQLiteConnection connection = new SQLiteConnection("Data Source=" + dbname))
{
connection.Open();
using (SQLiteCommand cmd = connection.CreateCommand())
{
cmd.CommandText = "create table d_test(id INTEGER PRIMARY KEY, data TEXT);";
cmd.ExecuteNonQuery();
}
}
}
//DB追加
using (SQLiteConnection connection = new SQLiteConnection("Data Source=" + dbname))
{
connection.Open();
using (var transaction = connection.BeginTransaction())
{
using (SQLiteCommand cmd = connection.CreateCommand())
{
cmd.CommandText = "insert into d_test(id, data) values (@ID, @DATA)";
cmd.Parameters.Add(new SQLiteParameter("@ID", 1));
cmd.Parameters.Add(new SQLiteParameter("@DATA", "testdata1"));
cmd.ExecuteNonQuery();
}
transaction.Commit();
}
}
}
・デザインのButton2をクリックして、csファイルで以下を追加する。
private void button2_Click(object sender, EventArgs e)
{
//DB検索
String dbname = "testviewer.db";
using (SQLiteConnection connection = new SQLiteConnection("Data Source=" + dbname))
{
connection.Open();
using (SQLiteCommand cmd = connection.CreateCommand())
{
//SQL
cmd.CommandText = "select * from d_test where id = @ID";
//パラメータ
cmd.Parameters.Add(new SQLiteParameter("@ID", 1));
//Prepare
cmd.Prepare();
//reader
using (SQLiteDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
Console.WriteLine(reader["id"].ToString());
Console.WriteLine(reader["data"].ToString());
}
}
}
}
}
・実行手順
Button1クリックして、DBにレコード登録する。
Button2クリックして、DBから検索する。
・実行結果
1
testdata1