C#的DBHelper类完整代码

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;

namespace DAL
{
    public class DBHelper
    {
        //连接字符串
        public static string connStr = "server=.;database=freshlivedb;Integrated Security=true;";//windows身份验证
        //声明所需对象
        public static SqlConnection conn = null;    //连接对象
        public static SqlCommand cmd = null;        //命令对象
        public static DataTable dt = null;          //DataTable对象
        public static SqlDataAdapter sda = null;    //SqlDataAdapter对象
        public static SqlDataReader dr = null;      //SqlDataReader对象
       public static void InitConnection()  //初始化连接--针对连接对象
        {
            //判断连接对象是否为空,是则创建
            if (conn == null)
                conn = new SqlConnection(connStr);
            //判断连接是否关闭,是则打开
            if (conn.State == ConnectionState.Closed)
                conn.Open();
            //判断连接是否中断,是则重启
            if (conn.State == ConnectionState.Broken)
            {
                conn.Close();   //关闭连接
                conn.Open();    //打开连接
            }
        }
       public static bool ExecuteNonQuery(string sql)  //执行增,删,改,返回是否成功
        {
            //打开连接
            InitConnection();
            //创建命令对象
            cmd = new SqlCommand(sql, conn);
            //执行命令
            int result=cmd.ExecuteNonQuery();
            //关闭连接
            conn.Close();
            //返回结果
            return result > 0;
        }
       public static SqlDataReader GetDataReader(string sql)    //执行查询,返回SqlDataReader对象--【非断开式】
        {
            //打开连接
            InitConnection();
            //创建命令对象
            cmd = new SqlCommand(sql, conn);
            //执行命令返回SqlDataReader对象,并自动关闭连接对象
            return cmd.ExecuteReader(CommandBehavior.CloseConnection);
        }
       public static DataTable GetDataTable(string sql)     //执行查询,返回DataTable对象--【断开式】
        {
            //打开连接
            InitConnection();
            //创建DataTable对象
            dt = new DataTable();
            //创建SqlDataAdapter对象
            sda = new SqlDataAdapter(sql, conn);
            //填充数据
            sda.Fill(dt);
            //关闭连接
            conn.Close();
            //返回DataTable对象
            return dt;
        }
       public static object ExecuteScalar(string sql)  //执行聚合函数,返回首行首列单个数据
        {
            //打开连接
            InitConnection();
            //创建命令对象
            cmd = new SqlCommand(sql, conn);
            //执行命令,获取结果
            object result = cmd.ExecuteScalar();
            //关闭连接
            conn.Close();
            //返回结果
            return result;
        }

    }

}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值