首页 > 代码库 > sqlHelper

sqlHelper

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Configuration;using System.Data.SqlClient;using System.Data;namespace _03第四季01SQLHelper{    class SqlHelper    {        //连接字符串        private static string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;        #region 版本一        //执行增删改        public static int ExecuteNonQurey(string sql)        {            using (SqlConnection conn = new SqlConnection(connStr))            {                conn.Open();                using (SqlCommand cmd = conn.CreateCommand())                {                    cmd.CommandText = sql;                    return cmd.ExecuteNonQuery();                }            }        }        //返回一行一列的查询结果        public static object ExecuteScalar(string sql)        {            using (SqlConnection conn = new SqlConnection(connStr))            {                conn.Open();                using (SqlCommand cmd = conn.CreateCommand())                {                    cmd.CommandText = sql;                    return cmd.ExecuteScalar();                }            }        }        ////返回多个查询结果,为什么会出错?        ////使用using(){}在{}之后系统会自动帮我们释放资源,所以在函数返回前连接已经关闭        //public static SqlDataReader ExecuteReader(string sql)        //{        //    using (SqlConnection conn = new SqlConnection(connStr))        //    {        //        conn.Open();        //        using (SqlCommand cmd = conn.CreateCommand())        //        {        //            cmd.CommandText = sql;        //            return cmd.ExecuteReader();        //        }        //    }        //}        public static SqlDataReader ExecuteReader(string sql, params SqlParameter[] spms)        //public static SqlDataReader ExecuteReader(string sql, CommandType cType, params SqlParameter[] spms)        {            SqlConnection conn = new SqlConnection(connStr);            using (SqlCommand cmd = conn.CreateCommand())            {                cmd.CommandText = sql;                //cmd.CommandType = cType;//不设置的话,使用默认                if (spms != null)                    cmd.Parameters.AddRange(spms);                try                {                    conn.Open();                    return cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);                }                catch                {                    conn.Close();                    conn.Dispose();                    throw;                }            }        }        //返回数据集        public static DataSet ExecuteDataSet(string sql)        {            using (SqlConnection conn = new SqlConnection(connStr))            {                conn.Open();                using (SqlCommand cmd = conn.CreateCommand())                {                    cmd.CommandText = sql;                    SqlDataAdapter adapter = new SqlDataAdapter(cmd);                    DataSet dataset = new DataSet();                    adapter.Fill(dataset);                    return dataset;                }            }        }        //一般查询语句结果只有一个表,所以可以返回DataTable类型        public static DataTable ExecuteDataTable(string sql)        {            using (SqlConnection conn = new SqlConnection(connStr))            {                conn.Open();                using (SqlCommand cmd = conn.CreateCommand())                {                    cmd.CommandText = sql;                    SqlDataAdapter adapter = new SqlDataAdapter(cmd);                    DataSet dataset = new DataSet();                    adapter.Fill(dataset);                    return dataset.Tables[0];                }            }        }        #endregion        //#region 版本二        //public static int ExecuteNonQurey(string sql,SqlParameter[] parameters )        //{        //    using (SqlConnection conn = new SqlConnection(connStr))        //    {        //        conn.Open();        //        using (SqlCommand cmd = conn.CreateCommand())        //        {        //            cmd.CommandText = sql;        //            //foreach(SqlParameter param in parameters)        //            //{        //            //    cmd.Parameters.Add(param);        //            //}        //            cmd.Parameters.AddRange(parameters);//等于foreach的写法        //            return cmd.ExecuteNonQuery();        //        }        //    }        //}        ////返回一行一列的查询结果        //public static object ExecuteScalar(string sql,SqlParameter[] parameters)        //{        //    using (SqlConnection conn = new SqlConnection(connStr))        //    {        //        conn.Open();        //        using (SqlCommand cmd = conn.CreateCommand())        //        {        //            cmd.CommandText = sql;        //            cmd.Parameters.AddRange(parameters);        //            return cmd.ExecuteScalar();        //        }        //    }        //}               ////返回数据集        //public static DataSet ExecuteDataSet(string sql,SqlParameter[] parameters)        //{        //    using (SqlConnection conn = new SqlConnection(connStr))        //    {        //        conn.Open();        //        using (SqlCommand cmd = conn.CreateCommand())        //        {        //            cmd.CommandText = sql;        //            cmd.Parameters.AddRange(parameters);        //            SqlDataAdapter adapter = new SqlDataAdapter(cmd);        //            DataSet dataset = new DataSet();        //            adapter.Fill(dataset);        //            return dataset;        //        }        //    }        //}        ////一般查询语句结果只有一个表,所以可以返回DataTable类型        //public static DataTable ExecuteDataTable(string sql,SqlParameter[] parameters)        //{        //    using (SqlConnection conn = new SqlConnection(connStr))        //    {        //        conn.Open();        //        using (SqlCommand cmd = conn.CreateCommand())        //        {        //            cmd.CommandText = sql;        //            cmd.Parameters.AddRange(parameters);        //            SqlDataAdapter adapter = new SqlDataAdapter(cmd);        //            DataSet dataset = new DataSet();        //            adapter.Fill(dataset);        //            return dataset.Tables[0];        //        }        //    }        //}        //#endregion        #region 版本三 可变参数        //public static int ExecuteNonQurey(string sql,params SqlParameter[] parameters)        //{        //    using (SqlConnection conn = new SqlConnection(connStr))        //    {        //        conn.Open();        //        using (SqlCommand cmd = conn.CreateCommand())        //        {        //            cmd.CommandText = sql;        //            //foreach(SqlParameter param in parameters)        //            //{        //            //    cmd.Parameters.Add(param);        //            //}        //            cmd.Parameters.AddRange(parameters);//等于foreach的写法        //            return cmd.ExecuteNonQuery();        //        }        //    }        //}        ////返回一行一列的查询结果        //public static object ExecuteScalar(string sql,params SqlParameter[] parameters)        //{        //    using (SqlConnection conn = new SqlConnection(connStr))        //    {        //        conn.Open();        //        using (SqlCommand cmd = conn.CreateCommand())        //        {        //            cmd.CommandText = sql;        //            cmd.Parameters.AddRange(parameters);        //            return cmd.ExecuteScalar();        //        }        //    }        //}               ////返回数据集        //public static DataSet ExecuteDataSet(string sql,params SqlParameter[] parameters)        //{        //    using (SqlConnection conn = new SqlConnection(connStr))        //    {        //        conn.Open();        //        using (SqlCommand cmd = conn.CreateCommand())        //        {        //            cmd.CommandText = sql;        //            cmd.Parameters.AddRange(parameters);        //            SqlDataAdapter adapter = new SqlDataAdapter(cmd);        //            DataSet dataset = new DataSet();        //            adapter.Fill(dataset);        //            return dataset;        //        }        //    }        //}        ////一般查询语句结果只有一个表,所以可以返回DataTable类型        //public static DataTable ExecuteDataTable(string sql,params SqlParameter[] parameters)        //{        //    using (SqlConnection conn = new SqlConnection(connStr))        //    {        //        conn.Open();        //        using (SqlCommand cmd = conn.CreateCommand())        //        {        //            cmd.CommandText = sql;        //            cmd.Parameters.AddRange(parameters);        //            SqlDataAdapter adapter = new SqlDataAdapter(cmd);        //            DataSet dataset = new DataSet();        //            adapter.Fill(dataset);        //            return dataset.Tables[0];        //        }        //    }        //}        #endregion    }}

 

sqlHelper