数据库操作 连接 增删改查 断开
传统方式
将数据库操作封装成一个工具类
using System.Data;
using System.Data.SqlClient;
public class TraditionalSQLServerDBManager
{
SqlConnection con;
public TraditionalSQLServerDBManager()
{
con = new SqlConnection();
con.ConnectionString = "Server=;DataBase=;Uid=;pwd=;";
con.Open();
}
public void ExcuteSQL(string sql)
{
SqlCommand com = new SqlCommand();
com.Connection = con;
com.CommandType = CommandType.Text;
com.CommandText = sql;
SqlDataReader dr = com.ExecuteReader();//执行SQL语句
dr.Close();//关闭执行
con.Close();//关闭数据库
}
}
使用工具类
TraditionalSQLServerDBManager manager = new TraditionalSQLServerDBManager();
manager.ExcuteSQL(@"INSERT INTO [test2].[dbo].[BitTable] ([IsDelete]) VALUES(1)");
使用第三方库Dapper
封装工具类
public class DbManager<T> where T : class
{
private static DbManager<T> instance;
private static object _lock = new object();
private SqlConnection connection;
public static DbManager<T> Instance
{
get
{
lock (_lock)
{
if (instance == null)
{
instance = new DbManager<T>();
}
}
return instance;
}
}
public DbManager()
{
connection = new SqlConnection("Server=;DataBase=;Uid=;pwd=;");
connection.Open();
}
public IEnumerable<T> QueryBySQL(string sql)
{
return connection.Query<T>(sql);
}
public bool ExecuteOne(string sql)
{
if (connection.Execute(sql) != 0)
return true;
return false;
}
}
调用方法
List<BitModel> list = new BLL.AboutDBManager().GetBitModel();
连接其他数据库,引用目标数据库相关DLL,将SqlConnection改为目标Connection即可。
如:
using System.Data.SQLite;
private SQLiteConnection connection;
其他
多个不同的数据库连接,比如MySQL,SQL Server,Oracle等,可以考虑采用接口实现多态
学习技术最好的文档就是【官方文档】,没有之一。
还有学习资料【Microsoft Learn】、【CSharp Learn】、【My Note】。
如果,你认为阅读这篇博客让你有些收获,不妨点击一下右下角的【推荐】按钮。
如果,你希望更容易地发现我的新博客,不妨点击一下【关注】。