「博客搬家」 原地址: CSDN 原發(fā)表時間: 2016-09-25
本文目前用于 Visual Studio 2015 平臺的 SQLite3 , 其他用法以后總結(jié)。
1. 使用 Nuget 添加 SQLite 庫
在 Visual Studio 2015 中,選擇:工具 -> NuGet 包管理器 -> 管理解決方案的 NuGet 程序包

NuGet 管理界面
在此界面下檢索「SQLite」, 根據(jù)需要選擇安裝其中一個 SQLite 庫,最好是紅框部分內(nèi)容中,二選一。
之后在界面的右側(cè),選擇需要安裝到的項(xiàng)目,之后進(jìn)行安裝操作即可。
2. 常用策略
2.1 對異常進(jìn)行捕獲
try
{
//將對數(shù)據(jù)庫進(jìn)行操作的語句放置在try中
}
catch (Exception ex)
{
//對異常進(jìn)行處理
}
2.2 事務(wù)及 SQLite 代碼框架
//使用以下語句配合具體的SQL操作語句即可
//注:不主動控制事務(wù)時,每次執(zhí)行SQL指令即會重復(fù)開啟新的事務(wù),
//會在SQL操作方面花費(fèi)大量的時間。所以在進(jìn)行大量插入、修改操作
//時,主動開啟事務(wù)會極大節(jié)省時間
var conn = new SQLiteConnection("Data Source =
./bitkyData.db; Version = 3; ");
conn.Open();
var trans = conn.BeginTransaction(); //開啟事務(wù)
var cmd = conn.CreateCommand();
try
{
//通過操作cmd,使用具體的SQL操作語句
}
catch (Exception)
{
trans.Rollback(); //事務(wù)回滾
//進(jìn)行具體的異常處理
}
trans.Commit();//事務(wù)提交
conn.Close();//連接關(guān)閉
3. 必備代碼塊
3.1 必要初始化操作
//指定數(shù)據(jù)庫的地址,以及SQLite版本號
SQLiteConnection conn = new SQLiteConnection("Data Source = ./bitkyData.db; Version = 3; ");
3.2 向表中插入指定的條目
void insertData()
{
conn.Open();
var cmd = conn.CreateCommand();
cmd.CommandText = "INSERT INTO ElectrodeController(typeA,typeB,typeM) VALUES (1, 2, 3)";
cmd.ExecuteNonQuery();
conn.Close();
}
3.3 設(shè)置查詢的條件,查詢指定條目的內(nèi)容
static void selectData()
{
conn.Open();
var cmd = conn.CreateCommand();
cmd.CommandText = "SELECT * FROM
ElectrodeController where num > 45";
var reader = cmd.ExecuteReader();//獲取結(jié)果集
if (reader.HasRows)
{
while (reader.Read())
{
Debug.WriteLine("ID: " + reader.GetInt32(0));
}
}
conn.Close();
}
3.4 獲取數(shù)據(jù)表中條目的數(shù)量
static void getCount()
{
conn.Open();
var cmd = conn.CreateCommand();
cmd.CommandText = "SELECT COUNT(*) FROM ElectrodeController";
var scalar = cmd.ExecuteScalar();\\獲取結(jié)果集中第一行第一列的那個值
Debug.WriteLine("count: " + Convert.ToInt32(scalar));
conn.Close();
}