SQLite帮助类的示例,它包含了常见的数据库操作方法,如打开和关闭数据库连接、执行SQL查询和更新语句、以及获取数据表中的数据等。
using System.Data.SQLite;
/// <summary>
/// SQLite帮助类
/// </summary>
public class SQLiteHelper
{
private SQLiteConnection connection;
/// <summary>
/// 打开数据库连接
/// </summary>
/// <param name="dbPath">数据库文件路径</param>
public void OpenConnection(string dbPath)
{
connection = new SQLiteConnection($"Data Source={dbPath};Version=3;");
connection.Open();
}
/// <summary>
/// 关闭数据库连接
/// </summary>
public void CloseConnection()
{
connection.Close();
}
/// <summary>
/// 执行SQL查询语句
/// </summary>
/// <param name="sql">SQL查询语句</param>
/// <returns>查询结果</returns>
public DataTable ExecuteQuery(string sql)
{
var command = new SQLiteCommand(sql, connection);
var adapter = new SQLiteDataAdapter(command);
var dataTable = new DataTable();
adapter.Fill(dataTable);
return dataTable;
}
/// <summary>
/// 执行SQL更新语句
/// </summary>
/// <param name="sql">SQL更新语句</param>
/// <returns>更新的行数</returns>
public int ExecuteUpdate(string sql)
{
var command = new SQLiteCommand(sql, connection);
return command.ExecuteNonQuery();
}
/// <summary>
/// 获取数据表中的所有数据
/// </summary>
/// <param name="tableName">数据表名称</param>
/// <returns>数据表中的所有数据</returns>
public DataTable GetAllData(string tableName)
{
var sql = $"SELECT * FROM {tableName}";
return ExecuteQuery(sql);
}
}
在上面的代码中,我们使用了SQLiteConnection类来打开和关闭数据库连接,使用SQLiteCommand类来执行SQL查询和更新语句,以及使用SQLiteDataAdapter类来获取数据表中的数据。我们还编写了一个GetAllData方法,该方法可以获取数据表中的所有数据。
使用这个SQLite帮助类非常简单。首先,我们需要创建一个SQLiteHelper对象,并调用OpenConnection方法打开数据库连接。然后,我们可以使用ExecuteQuery和ExecuteUpdate方法执行SQL查询和更新语句,或者使用GetAllData方法获取数据表中的所有数据。最后,我们需要调用CloseConnection方法关闭数据库连接。
以下是一个使用SQLite帮助类的示例:
var helper = new SQLiteHelper();
helper.OpenConnection("test.db");
// 执行SQL查询语句
var dataTable = helper.ExecuteQuery("SELECT * FROM users");
// 执行SQL更新语句
var rowsAffected = helper.ExecuteUpdate("UPDATE users SET name='John' WHERE id=1");
// 获取数据表中的所有数据
var allData = helper.GetAllData("users");
helper.CloseConnection();
总之,编写一个SQLite帮助类可以大大简化代码,并使数据库操作更加方便和可靠。
上面类也可以写成下面这样,它包含了连接数据库、执行查询、插入、更新和删除数据等常用操作。
using System.Data.SQLite;
public class SQLiteHelper
{
private string connectionString;
public SQLiteHelper(string connectionString)
{
this.connectionString = connectionString;
}
/// <summary>
/// 执行查询并返回结果集
/// </summary>
public DataTable ExecuteQuery(string sql)
{
using (var connection = new SQLiteConnection(connectionString))
{
connection.Open();
using (var command = new SQLiteCommand(sql, connection))
{
var adapter = new SQLiteDataAdapter(command);
var dataTable = new DataTable();
adapter.Fill(dataTable);
return dataTable;
}
}
}
/// <summary>
/// 执行插入、更新或删除操作
/// </summary>
public int ExecuteNonQuery(string sql)
{
using (var connection = new SQLiteConnection(connectionString))
{
connection.Open();
using (var command = new SQLiteCommand(sql, connection))
{
return command.ExecuteNonQuery();
}
}
}
/// <summary>
/// 执行查询并返回第一行第一列的结果
/// </summary>
public object ExecuteScalar(string sql)
{
using (var connection = new SQLiteConnection(connectionString))
{
connection.Open();
using (var command = new SQLiteCommand(sql, connection))
{
return command.ExecuteScalar();
}
}
}
/// <summary>
/// 执行事务
/// </summary>
public void ExecuteTransaction(Action<SQLiteTransaction> action)
{
using (var connection = new SQLiteConnection(connectionString))
{
connection.Open();
using (var transaction = connection.BeginTransaction())
{
try
{
action(transaction);
transaction.Commit();
}
catch (Exception)
{
transaction.Rollback();
throw;
}
}
}
}
}
这个SQLite帮助类包含了以下方法:
ExecuteQuery
:执行查询并返回结果集。ExecuteNonQuery
:执行插入、更新或删除操作。ExecuteScalar
:执行查询并返回第一行第一列的结果。ExecuteTransaction
:执行事务。
使用这个帮助类非常简单,只需要创建一个实例并调用相应的方法即可。例如:
var helper = new SQLiteHelper("Data Source=mydatabase.db");
var dataTable = helper.ExecuteQuery("SELECT * FROM mytable");
这个SQLite帮助类可以大大简化我们在C#中使用SQLite数据库的代码,使我们能够更加专注于业务逻辑的实现。
上面内容用于记录自己的学习与分享,分享让技术更进一步!
技术来源于思想自由、独立思考、辩证分析、逻辑思维与人类自由的创新,来服务于人类生活各种方便,而不是为了用技术打造思想鸿沟围城来制造愚蠢;技术是好的与坏的,好人用技术是更好的,坏人用技术是更坏的。推荐好书:乔治.奥威尔的《1984》、扎米亚京《我们》、阿道司·赫胥黎《美丽新世界》,有多个译本,选择喜欢且好的译本就行了;还有柏拉图的《理想国》、[法]孟德斯鸠的《论法的精神》、哈耶克《通向奴役之路》(港版)(港版翻译较好大陆版本,英语过硬的最好看英文原版),现在网店都有售卖!阅读好书,阅读大部分人未阅读过与课堂没有的书,阅读这片土地没有的知识就能增加一种思辨思维与智慧,才能走出狭隘思维偏见的洞穴!
柏拉图在他的巨著《理想国》的第七卷里写到了洞穴理论阐明:一群从小被囚禁生活在洞穴里人,在洞穴外面的光线照明下,往内看是一片片黑影,往外看是光明的海阔天空,越看越明亮!
见多识广,包容的人更自信、思维更多元,包容好的文化使人更强大,越自信越包容越强大!包容让你用上网络、电话、各种电器、汽车、芯片、铁路、高铁................