zoukankan      html  css  js  c++  java
  • SQLHelper类

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.SqlClient;
    using System.Data;
    
     
        /// <summary>
        /// sql server数据操作的底层类
        /// </summary>
        public class SQLHelper
        {
            public static string connStr = System.Configuration.ConfigurationManager.AppSettings["connStr"];
    
            //1.查询列表 GetTable
            /// <summary>
            /// 查询命令(sql 语句或过程名),返回一个数据表
            /// </summary>
            /// <param name="cmdText">命令</param>
            /// <param name="type">命令类型</param>
            /// <param name="pms">sql参数</param>
            /// <returns></returns>
            public static DataTable GetTable(string cmdText,CommandType type, params SqlParameter[] pms)
            {
                SqlConnection conn = new SqlConnection(connStr);
                conn.Open();
                SqlCommand cmd = new SqlCommand(cmdText, conn);
                cmd.CommandType = type;
                if (pms != null) //判断是不是有参数传递进来 判断数组是不是null
                {
                    foreach (SqlParameter item in pms)
                    {
                        if (item != null) //判断数组中的每一个元素是不是为null
                        {
                            cmd.Parameters.Add(item);
                        }
                    }
                }
                SqlDataAdapter sda = new SqlDataAdapter(cmd);
                DataSet ds = new DataSet();
                sda.Fill(ds, "aa");
                conn.Close();
                //返回结果
                DataTable dt = ds.Tables["aa"];
                return dt;
                //************************************
            }
    
            //给查询列表操作写一个执行sql语句的重载
            /// <summary>
            /// 执行sql语句,返回数据表
            /// </summary>
            /// <param name="sql">sql语句</param>
            /// <param name="pms">sql语句所需要的参数</param>
            /// <returns></returns>
            public static DataTable GetTable(string sql, params SqlParameter[] pms)
            {
                return GetTable(sql, CommandType.Text, pms);
            }
    
            //2.执行命令返回影响行数 ExecuteNonQuery
            public static int ExecuteNonQuery(string cmdText, CommandType type, params SqlParameter[] pms)
            {
                SqlConnection conn = new SqlConnection(connStr);
                conn.Open();
                SqlCommand cmd = new SqlCommand(cmdText, conn);
                cmd.CommandType = type;
                if (pms != null) //判断是不是有参数传递进来 判断数组是不是null
                {
                    foreach (SqlParameter item in pms)
                    {
                        if (item != null) //判断数组中的每一个元素是不是为null
                        {
                            cmd.Parameters.Add(item);
                        }
                    }
                } 
                int i = cmd.ExecuteNonQuery();
                conn.Close(); 
                return i;
            }
    
            public static int ExecuteNonQuery(string sql, params SqlParameter[] pms)
            {
                return ExecuteNonQuery(sql, CommandType.Text, pms);
            }
    
            //3.查询返回结果中的首行首列  ExecuteSingle
            public static object ExecuteSingle(string cmdText, CommandType type, params SqlParameter[] pms)
            {
                SqlConnection conn = new SqlConnection(connStr);
                conn.Open();
                SqlCommand cmd = new SqlCommand(cmdText, conn);
                cmd.CommandType = type;
                if (pms != null) //判断是不是有参数传递进来 判断数组是不是null
                {
                    foreach (SqlParameter item in pms)
                    {
                        if (item != null) //判断数组中的每一个元素是不是为null
                        {
                            cmd.Parameters.Add(item);
                        }
                    }
                }
    
                object obj= cmd.ExecuteScalar();
                conn.Close();
                return obj;
            }
    
            public static object ExecuteSingle(string sql, params SqlParameter[] pms)
            {
                return ExecuteSingle(sql, CommandType.Text, pms);
            }
    
            //4.查询返回一个DataReader对象,让别人以游标的方式去读取数据  GetDataReader
            public static SqlDataReader GetDataReader(string cmdText, CommandType type, params SqlParameter[] pms)
            {
                SqlConnection conn = new SqlConnection(connStr);
                conn.Open();
                SqlCommand cmd = new SqlCommand(cmdText, conn);
                cmd.CommandType = type;
                if (pms != null) //判断是不是有参数传递进来 判断数组是不是null
                {
                    foreach (SqlParameter item in pms)
                    {
                        if (item != null) //判断数组中的每一个元素是不是为null
                        {
                            cmd.Parameters.Add(item);
                        }
                    }
                }
                SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                return dr;
            }
    
            public static SqlDataReader GetDataReader(string sql, params SqlParameter[] pms)
            {
                return GetDataReader(sql, CommandType.Text, pms);
            }
            
        }
     
  • 相关阅读:
    BEGINNING SHAREPOINT&#174; 2013 DEVELOPMENT 第11章节--为Office和SP解决方式开发集成Apps Office新的App模型
    android Notification 的使用(锁定通知栏)
    Android中经常使用的工具类02
    【python系列】python画报表(Chartkick、Flask)(附中文乱码解决方式)
    Nginx 笔记与总结(14)expires 缓存设置
    数据分析师、数据科学家常见的77个面试问题
    数据分析师、数据科学家常见的77个面试问题
    常见数据分析方法汇总
    常见数据分析方法汇总
    机器学习、数据挖掘、人工智能、统计模型这么多概念有何差异
  • 原文地址:https://www.cnblogs.com/xiaz/p/5242937.html
Copyright © 2011-2022 走看看