`
LiuXiaoYong
  • 浏览: 31761 次
  • 性别: Icon_minigender_1
  • 来自: 惠州
社区版块
存档分类
最新评论

数据库访问助手类(SQLHelper)

    博客分类:
  • .NET
SQL 
阅读更多
说明:对数据库的操作无非就是增删改查,SQLHelper类能提供以上操作,而且可以说是通用的。
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;

namespace DAL
{
    /// <summary>
    /// 数据库助手类
    /// </summary>
    public class SQLHelper
    {
        private SqlConnection conn = null;
        private SqlCommand cmd = null;
        private SqlDataReader sdr = null;

        public SQLHelper()
        {
            string connStr = ConfigurationManager.ConnectionStrings["连接字符串名"].ConnectionString;
            conn = new SqlConnection(connStr);
        }

        private SqlConnection GetConn()
        {
            if (conn.State == ConnectionState.Closed)
            {
                conn.Open();
            }
            return conn;
        }

        /// <summary>
        ///  执行不带参数的增删改SQL语句或存储过程
        /// </summary>
        /// <param name="cmdText">增删改SQL语句或存储过程</param>
        /// <param name="ct">命令类型</param>
        /// <returns></returns>
        public int ExecuteNonQuery(string cmdText, CommandType ct)
        {
            int res;
            using (cmd = new SqlCommand(cmdText, GetConn()))
            {
                cmd.CommandType = ct;
                res = cmd.ExecuteNonQuery();
            }
            return res;
        }

        /// <summary>
        ///  执行带参数的增删改SQL语句或存储过程
        /// </summary>
        /// <param name="cmdText">增删改SQL语句或存储过程</param>
        /// <param name="ct">命令类型</param>
        /// <returns></returns>
        public int ExecuteNonQuery(string cmdText, SqlParameter[] paras, CommandType ct)
        {
            int res;
            using (cmd = new SqlCommand(cmdText, GetConn()))
            {
                cmd.CommandType = ct;
                cmd.Parameters.AddRange(paras);
                res = cmd.ExecuteNonQuery();
            }
            return res;
        }

        /// <summary>
        ///  执行查询SQL语句或存储过程
        /// </summary>
        /// <param name="cmdText">查询SQL语句或存储过程</param>
        /// <param name="ct">命令类型</param>
        /// <returns></returns>
        public DataTable ExecuteQuery(string cmdText, CommandType ct)
        {
            DataTable dt = new DataTable();
            cmd = new SqlCommand(cmdText, GetConn());
            cmd.CommandType = ct;
            using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
            {
                dt.Load(sdr);
            }
            return dt;
        }

        /// <summary>
        ///  执行带参数的查询SQL语句或存储过程
        /// </summary>
        /// <param name="cmdText">查询SQL语句或存储过程</param>
        /// <param name="paras">参数集合</param>
        /// <param name="ct">命令类型</param>
        /// <returns></returns>
        public DataTable ExecuteQuery(string cmdText, SqlParameter[] paras, CommandType ct)
        {
            DataTable dt = new DataTable();
            cmd = new SqlCommand(cmdText, GetConn());
            cmd.CommandType = ct;
            cmd.Parameters.AddRange(paras);
            using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
            {
                dt.Load(sdr);
            }
            return dt;
        }
    }
}
分享到:
评论

相关推荐

    数据访问通用类SqlHelper

    SqlHelper类的另一个关键特性是参数化查询,它可以有效防止SQL注入攻击。参数化查询通过使用SqlParameter对象将参数与SQL语句分离,确保了数据的安全性。开发者只需提供参数名和值,SqlHelper会自动处理参数绑定,...

    sqlhelper用于数据库访问

    在.NET框架中,微软提供了一种便捷的方式来处理SQL Server数据库操作,这就是SQLHelper类。SQLHelper是微软ADO.NET库的一部分,它简化了数据库的CRUD(创建、读取、更新和删除)操作,使得开发人员可以更加专注于...

    sql数据库助手类

    - 如果SqlHelper类设计为线程安全,那么它可能会包含锁或其他同步机制,以确保多个线程同时调用方法时不会引发冲突。 `SqlHelper.cs`类可能还包含了其他的实用功能,如数据库版本检查、自动连接重试、缓存连接字符...

    简易的sqlhelper(含例子)

    SQLHelper是.NET开发中常见的一种数据库访问助手类,它封装了基本的SQL操作,使得开发者在处理数据库事务时能够更加便捷。在这个简易的SQLHelper中,我们看到它提供了增、删、查、改这四种基本操作,对于初学者来说...

    sqlhelper源代码

    SQLHelper是一个在.NET框架中广泛使用的轻量级数据库访问组件,它的出现极大地简化了开发者与数据库之间的交互。这个“sqlhelper源代码”资源,无疑为那些想要深入理解数据库操作或者对.NET编程有热情的开发者提供了...

    C# 数据库辅助类(2个)

    这个文件很可能实现了一个SQL帮助器类,它封装了对ADO.NET(.NET框架中的数据库访问组件)的操作,比如执行SQL语句、存储过程等。以下是一些可能包含的功能: - **连接管理**:包括打开、关闭数据库连接,以及...

    SqlHelper

    SqlHelper是.NET框架中一个常用的数据库访问助手类库,它主要为VB.NET和C#开发者提供了方便快捷的SQL语句执行方法,简化了数据库操作。这个压缩包文件可能包含了一个实现SqlHelper功能的源代码文件或者相关的示例...

    SqlHelper源码及使用实例100604增强版

    SqlHelper是.NET框架中一个常用的数据库访问助手类,它的主要作用是简化数据库操作,提供了一种方便、快捷的方式来执行SQL语句和存储过程。在"SqlHelper源码及使用实例100604增强版"中,我们可以看到一系列相关的ASP...

    SqlHelper C#(微软的数据库操作工具,中英文注释齐全)

    总之,SqlHelper 是C#开发者在进行数据库操作时的一个强大助手,它通过简洁的接口、安全的参数处理以及全面的功能,为数据库操作提供了便利。无论你是构建企业级应用,还是进行简单的数据管理,SqlHelper 都是值得...

    商业编程-源码-SqlHelper源码及使用实例.zip

    SqlHelper是.NET框架中一种常见的数据库访问助手类,它封装了基本的SQL操作,使得开发者在进行数据库交互时能够更加便捷。本压缩包文件“商业编程-源码-SqlHelper源码及使用实例.zip”提供了SqlHelper的源代码以及...

    自己的SQLHelper

    一个好的SQLHelper类应该具备以下特点: 1. **连接管理**:自动管理和释放数据库连接,避免资源泄漏。通常通过连接池来提高性能,减少创建和销毁连接的时间。 2. **参数化查询**:支持参数化的SQL语句,防止SQL...

    SqlHelper.rar

    SqlHelper是.NET框架中一种常见的数据库访问助手类库,它为开发者提供了方便、高效的数据访问接口,主要用于简化SQL语句的编写和执行。在微软的.NET环境中,SqlHelper类库通常用于快速构建数据访问层(DAL),使得...

    sqlhelper 好助手

    SqlHelper是.NET Framework中一种常用的数据库访问助手类,主要用于简化SQL操作,提高代码的可读性和可维护性。在微软的开发环境中,SqlHelper经常被用于ASP.NET项目,以协助开发者进行数据存取。这个“sqlhelper 好...

    SqlHelper.cs网上的借用

    为了简化数据库访问,提高代码的可读性和可维护性,开发者通常会封装一些辅助类,SqlHelper.cs就是这样一个常见的数据库操作助手类。这个类通常包含了执行SQL语句、存储过程等常用功能,旨在为开发人员提供一个简洁...

    数据库处理类

    本主题将深入探讨“数据库处理类”的概念,特别是使用`sqlHelper`作为数据库访问类的情况,以及如何实现数据库操作的事务回滚功能。 首先,`sqlHelper`是一种常见的数据库访问模式,它是为了简化SQL语句的编写和...

    微软SqlHelper(原版+中文注释版)

    6. **错误处理**:SqlHelper通常会捕获并处理可能出现的数据库访问异常,例如SqlException,这样开发者可以在更高层次的代码中处理这些异常,提供更好的用户体验。 7. **中文注释**:中文注释版的SqlHelper源码有助...

    SqlHelper,OracleHelper,OleHelper

    这三个类通常作为数据访问层(DAL)的一部分,提供了方便的数据存取接口,降低了开发人员编写低级数据库连接代码的复杂性。 1. **SqlHelper**: SqlHelper是针对SQL Server数据库的辅助类,它基于ADO.NET框架,...

    C# DBHealper类源代码(含SQLHelper,AccessHelper)

    **SQLHelper类** 是针对SQL Server数据库设计的辅助类。它简化了ADO.NET中的连接、命令、参数和数据适配器等组件的使用。SQLHelper类通常包含以下功能: 1. **执行SQL语句**:提供ExecuteNonQuery方法来执行非查询...

    sqlhelper类 .net1.1/.net2.0 完全版(1分).....

    SqlHelper是.NET Framework 1.1和2.0时期,C#开发中广泛使用的数据库访问助手类,它简化了数据库操作,提供了对SQL Server数据库的便捷访问。在.NET框架早期,由于ADO.NET API较为复杂,SqlHelper类的出现极大地提高...

Global site tag (gtag.js) - Google Analytics