万能的DBHelper帮助类
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帮助类的更多相关文章
- [C#]实现任何数据库类型的DbHelper帮助类
本文章为原创内容,如需转载,请注明作者及出处,谢谢! 一.在System.Data.Common命名空间下,存在这样的一个类: // // 摘要: // 表示一组方法,这些方法用于创建提供程序对数据源 ...
- EF(Entity Framework)通用DBHelper通用类,增删改查以及列表
其中 通用类名:DBhelper 实体类:UserInfo 1 //新增 2 DBHelper<UserInfo> dbhelper = new DBHelper<UserInfo& ...
- 万能的SQLHelper帮助类
/// <summary> /// 数据库帮助类 /// </summary> public class SQLHelper { private static string c ...
- .net 在数据访问层中写一个DBhelper优化类
复习了在学校的时候做的WinForm端的一个学生信息管理系统,用的三层架构,看了一下里面的数据优化类 这个类是用来把对数据库的操作封装成静态方法,增删改查的时候直接调用这个类,减少项目里代码的冗余和方 ...
- 万能的JDBC工具类。通过反射机制直接简单处理数据库操作
package com.YY.util; import java.io.IOException; import java.io.InputStream; import java.sql.Connect ...
- ADO.NET连接数据库DBHelper工具类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- DbHelper 标准类
import java.io.*; import java.sql.*; import java.util.*; import javax.servlet.jsp.jstl.sql.*; public ...
- ADO.NET帮助类DBHelper
一. DBHelper帮助类 using System; using System.Collections.Generic; using System.Linq; using System.Text; ...
- [转]DbHelper通用数据库访问帮助类
之前我一直都是在博客园中查看各位高手的博文,确实学到了不少知识,不过比较少写博客,现在就把我自己在项目实施过程中使用到比较好的技术框架写出来,希望能让更多的人了解和学习. 通常我们在开发使用数据库访问 ...
随机推荐
- 开始学习Functional Programming
打算先学F#, 再学Scala. 第一个F#程序 open System [<EntryPoint>] let main argv = let a = "Hello, World ...
- iOS强制横屏或强制竖屏
原文链接 https://www.jianshu.com/p/d6cb54d2eaa1 亲测第二种我这边是阔以滴 第一种解决方案(不推荐,直接跳过看第二种解决方案): //强制转屏 - (void)i ...
- WebStorm Chinese Language Pack(中文语言包
https://github.com/ewen0930/WebStorm-Chinese http://ewen0930.github.io/2016/04/webstorm-chinese-lang ...
- python 字符编码判断 chardet评测
之前一直想找到一个模块,针对字符判断是什么字符集编码的库 网上有chardet的blog,发现自己的环境有这个库,于是就做了测试 >>> import chardet >> ...
- spring-boot子模块打包去掉BOOT-INF文件夹
1.spring-boot maven打包,一般pom.xml文件里会加 <plugin> <groupId>org.springframework.boot</grou ...
- Java开发面试题整理(2019春招)
一.Java基础部分 1. HashMap和Hashtable各有什么特点,它们有什么区别?(必背题,超级重要) HashMap和Hashtable都实现了Map接口,但决定用哪一个之前先要弄清楚它们 ...
- Library弱依赖打包
为减少强依赖,运行时动态监测依赖是否存在. 例如:内置的 HTTP client 可以是 OkHttpClient 或者是 HttpURLConnection.前者拥有更高的性能,但需要引入 OkHt ...
- 从0移植uboot(五) _实现串口输出
串口作为一种非常简单的通信方式,才是嵌入式系统调试的王道,通过设置串口输出,我们可以将程序运行的情况直接通过串口线输出到屏幕上,对于这种异常重要的功能,uboot原生就提供了支持,但为此我们需要做一些 ...
- 终端命令行编译运行C#程序HelloWorld
终端命令行编译运行C#程序HelloWorld 今天忽然有人问我,刚学习java程序的时候,一般老师都会建议我们从配置环境变量开始从命令行编译运行程序,那么学习c#的时候基本是直接安装visual s ...
- Grunt jshint Warning: Path must be a string . Received null Use
用grunt监视文件,出现'Warning: Path must be a string . Received null Use --force to continue 原因是没有设置reporter ...