C# SQLite数据库的帮助类
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数据库的代码,使我们能够更加专注于业务逻辑的实现。
————————————————
版权声明:本文为CSDN博主「m0_58015531」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_58015531/article/details/131327712