阅读 102

数据库操作 连接 增删改查 断开

传统方式

将数据库操作封装成一个工具类

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 DbManagerwhere T : class
{
    private static DbManagerinstance;
    private static object _lock = new object();
    private SqlConnection connection;
    public static DbManagerInstance
    {
        get
        {
            lock (_lock)
            {
                if (instance == null)
                {
                    instance = new DbManager();
                }
             }
            return instance;
        }
    }

    public DbManager()
    {
        connection = new SqlConnection("Server=;DataBase=;Uid=;pwd=;");
        connection.Open();
    }

    public IEnumerableQueryBySQL(string sql)
    {
        return connection.Query(sql);
    }

    public bool ExecuteOne(string sql)
    {
        if (connection.Execute(sql) != 0)
            return true;
        return false;
    }
}

登录后复制

调用方法

Listlist = new BLL.AboutDBManager().GetBitModel();

登录后复制

连接其他数据库,引用目标数据库相关DLL,将SqlConnection改为目标Connection即可。
如:

using System.Data.SQLite;
private SQLiteConnection connection;

登录后复制

其他

多个不同的数据库连接,比如MySQL,SQL Server,Oracle等,可以考虑采用接口实现多态

©著作权归作者所有:来自51CTO博客作者mb60854e935d6fd的原创作品,如需转载,请注明出处,否则将追究法律责任


文章分类
后端
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐