public class DBHelper
    {
        private static string connstring = ConfigurationManager.ConnectionStrings["DBConnection"].ToString();
        /// <summary>
        /// 使用using执行增,删、改
        /// </summary>
        /// <returns></returns>
        public static int UsingExecuteSql(string sql,params SqlParameter[] parameters)
        {
            using(SqlConnection connection=new SqlConnection(connstring))
            {
                connection.Open();
                SqlCommand command = new SqlCommand(sql,connection);
                command.Parameters.AddRange(parameters);
                int result = command.ExecuteNonQuery();
                return result;
            }
       
        }

/// <summary>
        /// 存储过程执行增、删、改
        /// </summary>
        /// <param name="procName"></param>
        /// <param name="parameters"></param>
        /// <returns></returns>
        public static int ExecuteProc(string procName,params SqlParameter[] parameters)
        {
            using (SqlConnection connection=new SqlConnection(connstring))
            {
                connection.Open();
                SqlCommand command = new SqlCommand(procName,connection);
                command.Parameters.AddRange(parameters);
                command.CommandType = CommandType.StoredProcedure;//类型为存储过程的名字
                return command.ExecuteNonQuery();
            }
        }

/// <summary>
        /// 使用using执行查询单个值
        /// </summary>
        /// <returns></returns>
        public static object UsingSingalExecuteSql(string sql, params SqlParameter[] parameters)
        {
            using (SqlConnection connection=new SqlConnection(connstring))
            {
                connection.Open();
                SqlCommand command = new SqlCommand(sql,connection);
                command.Parameters.AddRange(parameters);
                return command.ExecuteScalar();
            }
        }

/// <summary>
        /// 返回多个值的dataReader
        /// </summary>
        /// <param name="sql"></param>
        /// <param name="parameters"></param>
        /// <returns>返回一个DATAREADER</returns>
        public static SqlDataReader UsingDataReaderExecuteSql(string sql, params SqlParameter[] parameters)
        {

try
            {
                SqlConnection connection = new SqlConnection(connstring);
                SqlCommand command = new SqlCommand(sql, connection);
                command.Parameters.AddRange(parameters);
                return command.ExecuteReader(CommandBehavior.CloseConnection);
            }
            catch (Exception)
            {
               
                throw;
            }
        }

/ <summary>
        / 执行增,删,改
        / </summary>
        / <param name="sql">执行的SQL语句</param>
        / <param name="parameters"></param>
        / <returns>结果状态</returns>
        //public static int ExecuteSql(string sql,params SqlParameter[] parameters)
        //{
        //    try
        //    {
        //        OpenConnection();//打开数据库连接
        //        SqlCommand command = new SqlCommand(sql, conn);
        //        command.Parameters.AddRange(parameters);
        //        int result = command.ExecuteNonQuery();
        //        return result;
        //    }
        //    catch (Exception ex)
        //    {
        //        throw ex;
        //    }
        //    finally
        //    {
        //        CloseConnection();
        //    }
        //}

/ <summary>
        / 执行增,删,改
        / </summary>
        / <param name="sql">存储过程名字</param>
        / <param name="parameters"></param>
        / <returns>结果状态</returns>
        //public static int ExecuteProc(string procName, params SqlParameter[] parameters)
        //{
        //    try
        //    {
        //        OpenConnection();//打开数据库连接
        //        SqlCommand command = new SqlCommand(sql, conn);
        //        command.CommandType = CommandType.StoredProcedure;
        //        command.Parameters.AddRange(parameters);
        //        int result = command.ExecuteNonQuery();
        //        return result;
        //    }
        //    catch (Exception ex)
        //    {
        //        throw ex;
        //    }
        //    finally
        //    {
        //        CloseConnection();
        //    }
        //}

/ <summary>
        / 通过SQL语句获取单个值
        / </summary>
        / <param name="sql"></param>
        / <param name="parameters"></param>
        / <returns></returns>
        //public static object GetScale(string sql, params SqlParameter[] parameters)
        //{
        //    try
        //    {
        //        OpenConnection();//打开数据库连接
        //        SqlCommand command = new SqlCommand(sql, conn);
        //        command.Parameters.AddRange(parameters);
        //        return command.ExecuteScalar();
        //    }
        //    catch (Exception ex)
        //    {
        //        throw ex;
        //    }
        //    finally
        //    {
        //        CloseConnection();
        //    }
        //}

/ <summary>
        / 返回结果集
        / </summary>
        / <param name="sql"></param>
        / <param name="parameters"></param>
        / <returns></returns>
        //public static DataSet GetDataSet(string sql, params SqlParameter[] parameters)
        //{
        //    try
        //    {
        //        OpenConnection();//打开数据库连接
        //        DataSet ds=new DataSet();
        //        SqlCommand command=new SqlCommand(sql,conn);
        //        command.Parameters.AddRange(parameters);
        //        SqlDataAdapter adapter = new SqlDataAdapter(command);
        //        adapter.Fill(ds);
        //        return ds;
        //    }
        //    catch (Exception ex)
        //    {
        //        throw ex;
        //    }
        //    finally
        //    {
        //        CloseConnection();
        //    }
        //}

/// <summary>
        /// 执行增,删,改,事务处理
        /// 对于一条SQL语句不需要,对于多条才需要
        /// </summary>
        /// <param name="sql">存储过程名字</param>
        /// <param name="parameters"></param>
        /// <returns>结果状态</returns>
        //public static int ExecuteProc(string procName, params SqlParameter[] parameters)
        //{
        //    SqlTransaction trans=null;
        //    try
        //    {
        //        OpenConnection();//打开数据库连接
        //        trans = conn.BeginTransaction();

//        SqlCommand command = new SqlCommand(sql, conn);
               
        //        command.CommandType = CommandType.StoredProcedure;
        //        command.Parameters.AddRange(parameters);
        //        int result = command.ExecuteNonQuery();
        //        trans.Commit();
        //        return result;
        //    }
        //    catch (Exception ex)
        //    {
        //        if (trans!=null)
        //        {
        //            trans.Rollback();
        //        }
        //        throw ex;
        //    }
        //    finally
        //    {
        //        CloseConnection();
        //    }
        //}

转载于:https://www.cnblogs.com/30ErLi/archive/2010/09/17/1828848.html

三层结构下的DBHelper方法相关推荐

  1. 用MS.NET开发三层结构应用程序[转载]

    用MS.NET开发三层结构应用程序[转载] 原文: http://industry.ccidnet.com/art/294/20030526/47418_1.html 传统两层结构 在过去应用系统开发 ...

  2. c/c++下取消结构体字节对齐方法

    c/c++下取消结构体字节对齐方法 在c/c++下编译器会默认地对结构体进行对齐,其对齐的方法跟平台具体的特性有关,本文主要介绍结构体不进行对齐的方法. 1.结构体字节不进行对齐的用途 (1).减小内 ...

  3. 基于NHibernate的三层结构应用程序开发初步

    本文并不是去详细的介绍如何使用NHibernate,而是通过一个简单的例子来演示基于NHibernate的三层结构应用程序开发过程.关于NHibernate的有关文档,DDL已经做了汉化,但是由于英文 ...

  4. mvc与三层结构终极区别

    又看到有人在问三层架构和MVC的关系,感觉这种问题有点教条化了.因为它们都在逻辑上将应用程序划为三块,凑了一个数字3,就有人非要把它们联系到一起了. 这两个东西我接触有几年了,有一点体会,表达一下: ...

  5. 百度得来的所谓“三层结构”

    三层结构 三层结构解释 所谓三层体系结构,是在客户端与数据库之间加入了一个中间层,也叫组件层.这里所 说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也 不仅仅有B/S应用才 ...

  6. MVP+WCF+三层结构搭建项目框架(上)

    最近,我一直在重构之前做的一个项目,在这个过程中感慨万千.原先的项目是一个运用了WCF的C/S系统,在客户端运用了MVC模式,但MVC的View.Model耦合以及WCF端分布式欠佳等问题让我有了重构 ...

  7. 浅谈“三层结构”原理与用意(转帖)

    浅谈"三层结构"原理与用意 序 在刚刚步入"多层结构"Web应用程序开发的时候,我阅读过几篇关于"asp.net三层结构开发"的文章.但其多 ...

  8. 理解ASP.NET中的三层结构

    理解ASP.NET中的三层结构 我们用三层结构主要是使项目结构更清楚,分工更明确,有利于后期的维护和升级. 三层结构包含:表示层(USL),业务逻辑层(BLL),数据访问层(DAL) 1:数据访问层: ...

  9. c/s三层结构信息系统的三个层次_如何使用ABP框架(2)三层架构与领域驱动设计的对比...

    本文来自长沙.NET技术社区,原创:邹溪源.全文共有8500字,读完需耗时10分钟. 题图来自@pixabay 简述 上一篇简述了ABP框架中的一些基础理论,包括ABP前后端项目的分层结构,以及后端项 ...

最新文章

  1. 【从零学习OpenCV】4Ubuntu系统中安装OpenCV 4
  2. 程序员学习视频教程汇总——(转载)
  3. 服务认证暴力破解工具Crowbar
  4. 一个listMap里map其中的一个字段的值相同,如何判断这个字段相同,就把这个map的其他字段存入另一个map中...
  5. windows文件服务器双机热备_遇到ZFS文件系统如此棘手的问题,这种办法简单又高效!...
  6. C++11强类型枚举,override/final
  7. TypeScript 里的 class field
  8. CMFCToolBar插入组合框
  9. apicloud项目怎么运行_Spring Boot教程(3) – 运行第一个项目
  10. 在css/js代码上线之后开发人员经常会优化性能,从用户刷新网页开始,一次js请求一般情况下有哪些地方会有缓存处理?...
  11. c语言n次方怎么输入_C语言基本数据类型的思维导图
  12. 小米 Git(在线笔试)
  13. Callback Promise Generator Async-Await 和异常处理的演进
  14. windows自带黑体_win10黑体,windows10里的黑体
  15. 01 基本句型 + 补语
  16. redis的安装,配置
  17. 【Python】import class/import module
  18. Kettle连接Mysql报错:Driver class org.gjt.mm.mysql.Driver could not be found
  19. 牛腩新闻发布--本地超链接打不开
  20. 系统架构中常见问题及解决方案

热门文章

  1. jQuery 设置表格隔行变色、隔列变色
  2. .net 下URL重写
  3. 城市轨道交通运营票务管理论文_城市轨道交通运营企业的票务组织管理
  4. stm32f7网口_STM32F7串口通信问题
  5. python3写网络爬虫_python3写网络爬虫
  6. STM32 位段详解
  7. mysql 执行计划 视频_MySQL执行计划的讲解
  8. pycharm连接mysql1193错误_pycharm连接mysql数据库提示错误的解决方法_数据库
  9. NEC协议——红外遥控的使用
  10. 深入了解epoll 函数