DBHelper类:

简单的理解就是一个工具箱,我要用锤子的时候就在里面拿,我要用剪刀的时候也可以在里面拿,前提是我们写的DBHelper够不够强大!

软件中的四大功能:增、删、改、查  我们要实现这些功能就必须去一一对应的去写实现他们的方法,如果我们每次用到这几个功能的时候都要写实现相同的功能的方法,

那么就会出现代码冗余的情况,这个时候我们就可以把这些常用到的功能,提取出来封装在一个DBHelper类中,这样我们就不用每次重新去写实现相同功能的代码,

只需要带参数然后去调用你想实现什么功能的对应方法就可以了!!!

DBHelper格式:

public class DBHelper {
//从配置文件中获取连接字符串
public static string conStr = ConfigurationManager.AppSettings["conStr"]; //创建连接对象
private static SqlConnection con = null; //获取连接对象
public static SqlConnection GetConnection() {
if (con == null || con.ConnectionString == "") {
con = new SqlConnection(conStr);
}
return con;
} //打开 连接
public static void OpenConnection() {
if (con.State == ConnectionState.Closed) {
con.Open();
}
}
//关闭连接
public static void CloseConnection() {
if (con.State == ConnectionState.Open) {
con.Close();
}
} //执行查询:返回多行多列
public static SqlDataReader ExecuteReader(string sql, CommandType type, params SqlParameter[] para) {
SqlConnection con = GetConnection();
OpenConnection();
SqlCommand com = new SqlCommand(sql, con);
com.CommandType = type;
com.Parameters.AddRange(para);
SqlDataReader dr = com.ExecuteReader();
return dr;
} //动作查询:添加、修改、删除
public static int ExecuteNonQuery(string sql, CommandType type, params SqlParameter[] para) {
SqlConnection con = GetConnection();
OpenConnection();
SqlCommand com = new SqlCommand(sql, con);
com.CommandType = type;
com.Parameters.AddRange(para);
int n = com.ExecuteNonQuery();
CloseConnection();
return n;
}

万能的DBHelper帮助类的更多相关文章

  1. [C#]实现任何数据库类型的DbHelper帮助类

    本文章为原创内容,如需转载,请注明作者及出处,谢谢! 一.在System.Data.Common命名空间下,存在这样的一个类: // // 摘要: // 表示一组方法,这些方法用于创建提供程序对数据源 ...

  2. EF(Entity Framework)通用DBHelper通用类,增删改查以及列表

    其中 通用类名:DBhelper 实体类:UserInfo 1 //新增 2 DBHelper<UserInfo> dbhelper = new DBHelper<UserInfo& ...

  3. 万能的SQLHelper帮助类

    /// <summary> /// 数据库帮助类 /// </summary> public class SQLHelper { private static string c ...

  4. .net 在数据访问层中写一个DBhelper优化类

    复习了在学校的时候做的WinForm端的一个学生信息管理系统,用的三层架构,看了一下里面的数据优化类 这个类是用来把对数据库的操作封装成静态方法,增删改查的时候直接调用这个类,减少项目里代码的冗余和方 ...

  5. 万能的JDBC工具类。通过反射机制直接简单处理数据库操作

    package com.YY.util; import java.io.IOException; import java.io.InputStream; import java.sql.Connect ...

  6. ADO.NET连接数据库DBHelper工具类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  7. DbHelper 标准类

    import java.io.*; import java.sql.*; import java.util.*; import javax.servlet.jsp.jstl.sql.*; public ...

  8. ADO.NET帮助类DBHelper

    一. DBHelper帮助类 using System; using System.Collections.Generic; using System.Linq; using System.Text; ...

  9. [转]DbHelper通用数据库访问帮助类

    之前我一直都是在博客园中查看各位高手的博文,确实学到了不少知识,不过比较少写博客,现在就把我自己在项目实施过程中使用到比较好的技术框架写出来,希望能让更多的人了解和学习. 通常我们在开发使用数据库访问 ...

随机推荐

  1. Atitit 管理的模式扁平化管理 金字塔 直线型管理 垂直管理 水平管理 矩阵式管理 网状式样管理 多头管理 双头管理

    Atitit 管理的模式扁平化管理  金字塔 直线型管理 垂直管理 水平管理 矩阵式管理 网状式样管理 多头管理 双头管理 1.1. 矩阵管理 1 1.2. 相关信息 矩阵的历史 1 1.3. 基于“ ...

  2. Android PopupWindow 仿微信弹出效果

    项目中,我须要PopupWindow的时候特别多,这个东西也特别的好使,所以我今天给大家写一款PopupWindow 仿微信弹出效果.这样大家直接拿到项目里就能够用了! 首先让我们先看效果: 那么我首 ...

  3. python中字符串前的r什么意思

    Python中,u表示unicode string,表示使用unicode进行编码,没有u表示byte string,类型是str,在没有声明编码方式时,默认ASCI编码.如果要指定编码方式,可在文件 ...

  4. Linux应该知道的技巧

    https://coolshell.cn/articles/8883.html https://www.quora.com/Linux/What-are-some-time-saving-tips-t ...

  5. 【基础篇】elasticsearch之索引模板Template[转]

    一,模板简述:template大致分成setting和mappings两部分:索引可使用预定义的模板进行创建,这个模板称作Index templates.模板设置包括settings和mappings ...

  6. 浏览器神器--vimium

    自从学会了正确的坐姿,坐在电脑一整天腰也不酸了.背也不痛了,精神倍棒吃嘛嘛香   zuomeng.png 但奈何使用鼠标久了,手腕.肩膀依旧疼痛.偶尔逛知乎,看到有人推荐chrome浏览器的vimiu ...

  7. [转]理解Go语言中的nil

    最近在油管上面看了一个视频:Understanding nil,挺有意思,这篇文章就对视频做一个归纳总结,代码示例都是来自于视频. nil是什么 相信写过Golang的程序员对下面一段代码是非常非常熟 ...

  8. python3命令行ImportError: No module named 'xxxx'的问题

    主要原因:启动脚本不在当前目录下,无法找到上一层 在pycharm写好的脚本程序,在命令行无法运行,报错 Traceback (most recent call last): File "t ...

  9. php -- func_get_args

    该方法必须在某个方法内部执行才有效 返回值为索引数组,一个数组元素对应一个参数

  10. iOS开发之--Masonry多个平均布局

    使用Masonry平均布局,代码如下: 1.创建 // 图片组数 NSArray *imgAry = @[@"home_icon01",@"home_icon02&quo ...