• DbHelperSQL


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    
    namespace DAL
    {
        public class DbHelperSQL
        {
            static string strConn = System.Configuration.ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
    
            #region 1.0 获取 数据表
            /// <summary>
            /// 获取 数据表
            /// </summary>
            /// <param name="strSql"></param>
            /// <param name="paras"></param>
            /// <returns></returns>
            public static DataTable GetDataTable(string strSql, params SqlParameter[] paras)
            {
                using (SqlConnection conn = new SqlConnection(strConn))
                {
                    //查询少量数据时,用适配器(内部就是用 读取器 读取数据然后装入 数据集/数据表 返回)
                    SqlDataAdapter da = new SqlDataAdapter(strSql, conn);
                    //此时 paras 长度 >= 0,所以可以直接添加
                    da.SelectCommand.Parameters.AddRange(paras);
                    //创建数据表
                    DataTable dt = new DataTable();
                    //执行查询并填充数据
                    da.Fill(dt);
                    return dt;
                }
            }
            #endregion
            #region 2.0 获取读取器(读取大量数据时使用) 
            /// <summary>
            /// 获取读取器(读取大量数据时使用)
            /// </summary>
            /// <param name="strSql"></param>
            /// <param name="paras"></param>
            /// <returns></returns>
            public static SqlDataReader ExcuteDataReader(string strSql, params SqlParameter[] paras)
            {
                //连接通道
                SqlConnection conn = new SqlConnection(strConn);
                //打开连接通道
                conn.Open();
                //命令对象
                SqlCommand cmd = new SqlCommand(strSql, conn);
                //添加参数
                cmd.Parameters.AddRange(paras);
                //创建读取器,同时指定行为:如果读取器被关闭,会自动关闭该读取器使用的 Connection
                SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                return dr;
            }
            #endregion
            #region 3.0执行查询语句 
            /// <summary>
            /// 执行费查询语句
            /// </summary>
            /// <param name="strSql"></param>
            /// <param name="paras"></param>
            /// <returns></returns>
            public static int ExcuteNonQuery(string strSql, params SqlParameter[] paras)
            {
                using (SqlConnection conn = new SqlConnection(strConn))
                {
                    SqlCommand cmd = new SqlCommand(strSql, conn);
                    cmd.Parameters.AddRange(paras);
                    conn.Open();
                    return cmd.ExecuteNonQuery();
                }
            }
            #endregion
            #region 4.0查询单个值 +object ExcuteScalar(string strSql, params SqlParameter[] paras)
            /// <summary>
            /// 查询单个值
            /// </summary>
            /// <param name="strSql"></param>
            /// <param name="paras"></param>
            /// <returns></returns>
            public static object ExcuteScalar(string strSql, params SqlParameter[] paras)
            {
                using (SqlConnection conn = new SqlConnection(strConn))
                {
                    SqlCommand cmd = new SqlCommand(strSql, conn);
                    cmd.Parameters.AddRange(paras);
                    conn.Open();
                    return cmd.ExecuteScalar();
                }
            }
            #endregion
            #region 5.0查询单个值(泛型版本) 
            /// <summary>
            /// 查询单个值(泛型版本)
            /// </summary>
            /// <param name="strSql"></param>
            /// <param name="paras"></param>
            /// <returns></returns>
            public static T ExcuteScalar<T>(string strSql, params SqlParameter[] paras)
            {
                using (SqlConnection conn = new SqlConnection(strConn))
                {
                    SqlCommand cmd = new SqlCommand(strSql, conn);
                    cmd.Parameters.AddRange(paras);
                    conn.Open();
                    return (T)cmd.ExecuteScalar();
                }
            }
            #endregion
            #region 6.0 获取 数据表(调用存储过程)
            /// <summary>
            /// 获取 数据表(调用存储过程)
            /// </summary>
            /// <param name="strProcName"></param>
            /// <param name="paras"></param>
            /// <returns></returns>
            public static DataTable ExcuteTableByProc(string strProcName, params SqlParameter[] paras)
            {
                using (SqlConnection conn = new SqlConnection(strConn))
                {
                    //查询少量数据时,用适配器(内部就是用 读取器 读取数据然后装入 数据集/数据表 返回)
                    SqlDataAdapter da = new SqlDataAdapter(strProcName, conn);
                    da.SelectCommand.CommandType = CommandType.StoredProcedure;
                    //此时 paras 长度 >= 0,所以可以直接添加
                    da.SelectCommand.Parameters.AddRange(paras);
                    //创建数据表
                    DataTable dt = new DataTable();
                    //执行查询并填充数据
                    da.Fill(dt);
                    return dt;
                }
            }
            #endregion
    
        }
    }
  • 相关阅读:
    Winform 扁平化UI推荐 ReaLTaiizor
    Python3中的map()、reduce()、filter()
    Python中 _xx、__xx、__xx__ 的区别
    Python中的匿名函数
    Python中的*args和**kwargs
    在线课堂平台开发(一)——mybatis_plus
    创建一个空的 Spring Boot 工程
    IDEA快捷键
    linux系统下使用cmake编译so文件
    使用tensorRT C++ API搭建MLP网络详解
  • 原文地址:https://www.cnblogs.com/CodeBase/p/3691642.html
Copyright © 2020-2023  润新知