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. 【iCore4 双核心板_ARM】例程二十八:FSMC实验——读写FPGA

    实验现象: 1.先烧写FPGA程序,再烧写ARM程序,ARM程序烧写完毕后即开始读写RAM测试,测试成功,绿色ARM·LED亮,测试失败,红色ARM·LED闪烁. 2.测试成功,ARM通过映射寄存器来 ...

  2. 自己动手DIY macos下的绘图软件Pencil之原生菜单

    自从进入到Nodejs这个生态后,体验到了更多的可能性. Pencil是我从Linux时代就开始用的免费开源的原型/流程图软件,它之前版本是基于Firefox的XUL生态开发的,其作者从15年开始基于 ...

  3. 第四百一十五节,python常用排序算法学习

    第四百一十五节,python常用排序算法学习 常用排序 名称 复杂度 说明 备注 冒泡排序Bubble Sort O(N*N) 将待排序的元素看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮 ...

  4. .net IIS MVC Rest api 跨域 PUT DELETE 404 无法使用问题解决方案

    一.WebConfig配置法(system.webServer 重点是 httpProtocol handlers) http://www.jinxuliang.com/blog/article/re ...

  5. Vue .Net 前后端分离框架搭建

    [参考]IntellIJ IDEA 配置 Vue 支持 打开Vue项目 一.前端开发环境搭建 1.零基础 Vue 开发环境搭建 打开运行Vue项目 2.nodejs http-proxy-middle ...

  6. windows 端口被占用,并杀死进程的方法

    netstat -ano | findstr 8081 查询端口 被什么进程占用 tasklist | findstr 2184 根据进程号 查询任务名称 taskkill /f /t /im jav ...

  7. iOS 之 HTTPS集成实战应用

    临时想起来忘记把项目中用到的https集成整理收藏起来,以备后续不时之需.新手一般了解如下步骤即可: 1. HTTP 和 HTTPS 基本知识和学习 http://www.cnblogs.com/xi ...

  8. Oracle 10G 安装文档

    Oracle 10G安装指导 1. 解压文件10201_database_win32.zip,并双击解压目录下的setup.exe,出现安装界面,如下: 2. 输入口令和确认口令,如:password ...

  9. iOS - 国内注册境外 Apple id 账号

    注册前准备工作 需要手头MAC一台 AppStore下载VPN Plus FQ到美国(ipip.net 查看当前ip 是否是在境外 当前ip 在境外才可以哦) 动手搞起来 https://applei ...

  10. nuxt二级路由

    耗费了大半天的时间,终于把页面的二级路由配置好了 先看我的目录 如果没有登陆页,根本就不用考虑嵌套路由的问题,主要的menu跳转和<nuxt />可以直接写到layouts/default ...