`
long546324
  • 浏览: 206684 次
  • 性别: Icon_minigender_1
  • 来自: 云南
社区版块
存档分类
最新评论

.Net连接sql数据库的一个助手类

    博客分类:
  • .net
阅读更多
web.config文件
<connectionStrings>
<add name="connStr" connectionString="Data Source=.;Initial Catalog=newssystem;Integrated Security=True"/>
</connectionStrings>

SQLHelper.cs文件
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Configuration;
using System.Data.SqlClient;

namespace DAL
{
    public class SQLHelper
    {
        public static SqlCommand cmd = null;
        public static SqlConnection conn = null;
        public static string connstr = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString;
        public SQLHelper()
        { }
        #region 建立数据库连接对象
        /// <summary>
        /// 建立数据库连接
        /// </summary>
        /// <returns>返回一个数据库的连接SqlConnection对象</returns>
        public static SqlConnection init()
        {
            try
            {
                conn = new SqlConnection(connstr);
                if (conn.State != ConnectionState.Open)
                {
                    conn.Open();
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message.ToString());
            }
            return conn;
        }
        #endregion

        #region 设置SqlCommand对象
        /// <summary>
        /// 设置SqlCommand对象       
        /// </summary>
        /// <param name="cmd">SqlCommand对象 </param>
        /// <param name="cmdText">命令文本</param>
        /// <param name="cmdType">命令类型</param>
        /// <param name="cmdParms">参数集合</param>
        private static void SetCommand(SqlCommand cmd, string cmdText, CommandType cmdType, SqlParameter[] cmdParms)
        {
            cmd.Connection = conn;
            cmd.CommandText = cmdText;
            cmd.CommandType = cmdType;
            if (cmdParms != null)
            {
                cmd.Parameters.AddRange(cmdParms);
            }
        }
        #endregion

        #region 执行相应的sql语句,返回相应的DataSet对象
        /// <summary>
        /// 执行相应的sql语句,返回相应的DataSet对象
        /// </summary>
        /// <param name="sqlstr">sql语句</param>
        /// <returns>返回相应的DataSet对象</returns>
        public static DataSet GetDataSet(string sqlstr)
        {
            DataSet set = new DataSet();
            try
            {
                init();
                SqlDataAdapter adp = new SqlDataAdapter(sqlstr, conn);
                adp.Fill(set);
                conn.Close();
            }
            catch (Exception e)
            {
                throw new Exception(e.Message.ToString());
            }
            return set;
        }
        #endregion

        #region 执行相应的sql语句,返回相应的DataSet对象
        /// <summary>
        /// 执行相应的sql语句,返回相应的DataSet对象
        /// </summary>
        /// <param name="sqlstr">sql语句</param>
        /// <param name="tableName">表名</param>
        /// <returns>返回相应的DataSet对象</returns>
        public static DataSet GetDataSet(string sqlstr, string tableName)
        {
            DataSet set = new DataSet();
            try
            {
                init();
                SqlDataAdapter adp = new SqlDataAdapter(sqlstr, conn);
                adp.Fill(set, tableName);
                conn.Close();
            }
            catch (Exception e)
            {
                throw new Exception(e.Message.ToString());
            }
            return set;
        }
        #endregion

        #region 执行不带参数sql语句,返回所影响的行数
        /// <summary>
        /// 执行不带参数sql语句,返回所影响的行数
        /// </summary>
        /// <param name="cmdstr">增,删,改sql语句</param>
        /// <returns>返回所影响的行数</returns>
        public static int ExecuteNonQuery(string cmdText)
        {
            int count;
            try
            {
                init();
                cmd = new SqlCommand(cmdText, conn);
                count = cmd.ExecuteNonQuery();
                conn.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return count;
        }
        #endregion

        #region 执行带参数sql语句或存储过程,返回所影响的行数
        /// <summary>
        ///  执行带参数sql语句或存储过程,返回所影响的行数
        /// </summary>
        /// <param name="cmdText">带参数的sql语句和存储过程名</param>
        /// <param name="cmdType">命令类型</param>
        /// <param name="cmdParms">参数集合</param>
        /// <returns>返回所影响的行数</returns>
        public static int ExecuteNonQuery(string cmdText, CommandType cmdType, SqlParameter[] cmdParms)
        {
            int count;
            try
            {
                init();
                cmd = new SqlCommand();
                SetCommand(cmd, cmdText, cmdType, cmdParms);
                count = cmd.ExecuteNonQuery();
                cmd.Parameters.Clear();
                conn.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return count;
        }
        #endregion

        #region 执行不带参数sql语句,返回一个从数据源读取数据的SqlDataReader对象
        /// <summary>
        /// 执行不带参数sql语句,返回一个从数据源读取数据的SqlDataReader对象
        /// </summary>
        /// <param name="cmdstr">相应的sql语句</param>
        /// <returns>返回一个从数据源读取数据的SqlDataReader对象</returns>
        public static SqlDataReader ExecuteReader(string cmdText)
        {
            SqlDataReader reader;
            try
            {
                init();
                cmd = new SqlCommand(cmdText, conn);
                reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return reader;
        }
        #endregion

        #region 执行带参数的sql语句或存储过程,返回一个从数据源读取数据的SqlDataReader对象
        /// <summary>
        /// 执行带参数的sql语句或存储过程,返回一个从数据源读取数据的SqlDataReader对象
        /// </summary>
        /// <param name="cmdText">sql语句或存储过程名</param>
        /// <param name="cmdType">命令类型</param>
        /// <param name="cmdParms">参数集合</param>
        /// <returns>返回一个从数据源读取数据的SqlDataReader对象</returns>
        public static SqlDataReader ExecuteReader(string cmdText, CommandType cmdType, SqlParameter[] cmdParms)
        {
            SqlDataReader reader;
            try
            {
                init();
                cmd = new SqlCommand();
                SetCommand(cmd, cmdText, cmdType, cmdParms);
                reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return reader;
        }
        #endregion

        #region 执行不带参数sql语句,返回一个DataTable对象
          /// <summary>
        /// 执行不带参数sql语句,返回一个DataTable对象
        /// </summary>
        /// <param name="cmdText">相应的sql语句</param>
        /// <returns>返回一个DataTable对象</returns>
        public static DataTable GetDataTable(string cmdText)
        {

            SqlDataReader reader;
            DataTable dt=new DataTable();
            try
            {
                init();
                cmd = new SqlCommand(cmdText, conn);
                reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                dt.Load(reader);
                reader.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return dt;
        }
        #endregion

        #region 执行带参数的sql语句或存储过程,返回一个DataTable对象
          /// <summary>
        /// 执行带参数的sql语句或存储过程,返回一个DataTable对象
        /// </summary>
        /// <param name="cmdText">sql语句或存储过程名</param>
        /// <param name="cmdType">命令类型</param>
        /// <param name="cmdParms">参数集合</param>
        /// <returns>返回一个DataTable对象</returns>
        public static DataTable GetDataTable(string cmdText, CommandType cmdType, SqlParameter[] cmdParms)
        {
            SqlDataReader reader;
            DataTable dt=new DataTable();
            try
            {
                init();
                cmd = new SqlCommand();
                SetCommand(cmd, cmdText, cmdType, cmdParms);
                reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                dt.Load(reader);
                reader.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return dt;
        }
        #endregion

        #region 执行不带参数sql语句,返回结果集首行首列的值object
        /// <summary>
        /// 执行不带参数sql语句,返回结果集首行首列的值object
        /// </summary>
        /// <param name="cmdstr">相应的sql语句</param>
        /// <returns>返回结果集首行首列的值object</returns>
        public static object ExecuteScalar(string cmdText)
        {
            object obj;
            try
            {
                init();
                cmd = new SqlCommand(cmdText, conn);
                obj = cmd.ExecuteScalar();
                conn.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return obj;
        }
        #endregion

        #region 执行带参数sql语句或存储过程,返回结果集首行首列的值object
        /// <summary>
        /// 执行带参数sql语句或存储过程,返回结果集首行首列的值object
        /// </summary>
        /// <param name="cmdText">sql语句或存储过程名</param>
        /// <param name="cmdType">命令类型</param>
        /// <param name="cmdParms">返回结果集首行首列的值object</param>
        /// <returns></returns>
        public static object ExecuteScalar(string cmdText, CommandType cmdType, SqlParameter[] cmdParms)
        {
            object obj;
            try
            {
                init();
                cmd = new SqlCommand();
                SetCommand(cmd, cmdText, cmdType, cmdParms);
                obj = cmd.ExecuteScalar();
                conn.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message.ToString());
            }
            return obj;
        }
        #endregion
    }
}
2
0
分享到:
评论

相关推荐

    vb.net连接SQLServer数据库

    综上所述,VB.NET连接SQL Server数据库涉及到创建连接对象、定义SQL命令、执行操作以及处理结果。通过封装这些操作到不同的类中,可以构建一个高效且易于维护的数据库操作模块,从而实现对数据库的全面操作。在实际...

    asp.net+sql数据库学生成绩管理系统源码

    资源名:asp.net+sql数据库学生成绩管理系统源码 资源类型:程序源代码 源码说明: 基于asp.net编写的学生成绩管理系统 包含完整代码和数据库 很适合借鉴学习 适合人群:新手及有一定经验的开发人员

    一个VB.NET连接和操作Sql Server的类

    一个VB.NET连接和操作Sql Server的类 一个VB.NET连接和操作Sql Server的类

    VB.NET及SQL数据库简介

    在VB.NET中连接和操作SQL数据库,首先需要建立一个连接字符串,指定数据库服务器、数据库名称、用户名和密码。然后,可以创建SqlConnection对象并打开连接。接着,使用SqlCommand对象来执行SQL语句,如SELECT、...

    (VB.net 连接 SQL server数据库案例源码)数据收纳箱系统.zip

    (VB.net 连接 SQL server数据库案例源码)数据收纳箱系统.zip 源码开放,datagridview1控件列示等等

    VB.NET+SQL数据库实现数据的修改添加删除及照片上传下载

    在VB.NET编程环境中,结合SQL数据库,我们可以构建一个功能丰富的数据管理应用,其中包括对数据库中的数据进行添加、删除、编辑和读取等基本操作,同时支持照片的上传和下载功能。下面将详细介绍如何实现这些功能。 ...

    vb.net数据库连接实例

    在VB.NET中,数据库连接是...通过以上步骤,你可以创建一个简单的VB.NET数据库连接实例。在实际应用中,还可以使用ORM(对象关系映射)框架,如Entity Framework,来简化数据访问层的开发,使代码更加简洁和易于维护。

    VB.NET操作SQL数据库.zip

    这个名为"VB.NET操作SQL数据库.zip"的压缩包很可能包含了示例源码,帮助开发者理解如何在VB.NET环境中连接、查询、插入、更新和删除SQL数据库中的数据。 首先,我们需要了解ADO.NET,它是.NET Framework的一部分,...

    asp.net连接sql数据库web.config配置

    通过以上所述,我们能理解如何在ASP.NET中配置`web.config`以连接SQL数据库,以及其中涉及的关键参数。确保正确配置这些信息,是确保ASP.NET应用程序能够成功访问并操作SQL Server数据库的基础。

    ASP.NET连接sql2008数据库

    在本项目中,我们将深入探讨如何利用ASP.NET连接SQL Server 2008数据库,并通过SqlConnection对象实现这一目标。 首先,为了连接SQL Server 2008数据库,我们需要创建一个SqlConnection对象。SqlConnection是.NET ...

    ASP.NET连接SQL Server数据库的实现.pdf

    ***连接SQL Server数据库的实现主要涉及到***数据访问技术,以及.NET Framework数据提供程序的使用。以下是对本文档提供的知识点的详细阐述: ### ***组件分析 ***是Microsoft公司为.NET框架开发的应用程序提供的...

    Asp.net连接SQL数据库实例

    1、Socut插件 连接 SQL 2005 2、应用非参数化的存储过程 ...4、自定义的SQL数据库类da_slink.ExecuteNoQuery的使用方法 不含参数化,不含存储过程 5、参数化插入[ 不包含存储过程 ] 注: 平台 SQL2005 与 vs2005

    简单留言板 asp.net c# SQL数据库

    【简单留言板 ASP.NET C# SQL数据库】是一个适合初学者入门的项目,它涵盖了网页开发、后端编程以及数据库管理的基础知识。在这个项目中,我们主要会涉及到以下几方面的技术要点: 1. **ASP.NET框架**:ASP.NET是...

    asp.net连接sql数据库方法

    本文将基于“asp.net连接sql数据库方法”的标题,深入解析如何在ASP.NET环境中成功连接并操作SQL Server数据库,解决连接过程中可能出现的错误,并确保系统稳定运行。 ### ASP.NET与SQL Server连接基础 #### 1. ...

    ASP.NET绑定sql数据库采用echarts显示数据图表

    首先,我们需要理解如何在ASP.NET中连接SQL数据库。通常,我们会使用ADO.NET(ActiveX Data Objects)框架,包括SqlConnection、SqlCommand、SqlDataAdapter和DataSet等组件。SqlConnection对象用于建立与SQL Server...

    ASP.NET绑定sql数据库采用echarts显示数据图表(实现了柱状图和饼图).zip

    通过这个项目,我们可以学习到如何在ASP.NET中连接和操作SQL数据库,如何封装数据处理逻辑到独立的类文件中,以及如何利用ECharts将数据转化为直观的图表。这涉及到的知识点包括: 1. ASP.NET Web Forms:理解页面...

    VB.Net连接各种数据库的几种方法

    ### VB.Net连接各种数据库的方法详解 #### 一、引言 随着信息技术的不断发展,数据库作为存储和管理数据的核心工具,在软件开发中扮演着至关重要的角色。Microsoft Visual Basic.NET(简称VB.NET),作为一款强大...

    ASP.NET 连接SQL数据库

    在ASP.NET中,使用ADO.NET连接SQL Server数据库是基础且关键的技能。了解这些概念和最佳实践将帮助你构建健壮、高效的应用程序。在实践中,不断学习和优化,以适应不断变化的业务需求和技术进步。

    .net连接DB2数据库编程简介

    为了在.NET中与DB2交互,我们需要IBM Data Provider for .NET,这是一个专门设计用于连接.NET应用程序和DB2数据库的驱动程序。 1. **安装IBM Data Provider for .NET** 在开始编程之前,确保已经下载并安装了IBM ...

    ASP.NET访问SQL数据库

    ASP.NET是如何访问及连接SQL数据库

Global site tag (gtag.js) - Google Analytics