SqlHelper 基类
using System; using System.Collections.Generic; using System.Linq; using System.Text; /**/ using System.Data.SqlClient; using System.Data; using System.Configuration; /******************************************************************************** ** 创建人: ** 创始时间:2012-11-27 ** 修改人: ** 修改时间: ** 描述: ** 数据库操作基类 *********************************************************************************/ namespace DAL { public class SqlHelper { public static SqlConnection connection; #region 打开数据库 /// <summary> /// 打开数据库 /// </summary> public static SqlConnection Conn { get { string connStr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; if (connection == null) { connection = new SqlConnection(connStr); connection.Open(); } else if(connection.State==System.Data.ConnectionState.Closed){ connection = new SqlConnection(connStr); connection.Open(); }else if (connection.State==System.Data.ConnectionState.Broken){ connection.Close(); connection.Open(); } return connection; } } #endregion #region 增,删,改ExecuteNonQuery /// <summary> /// 单个数据增,删,改 /// </summary> /// <param name="sql"></param> /// <returns></returns> public static int ExecuteNonQuery(string sql) { try { using(SqlCommand cmd=new SqlCommand(sql,Conn)) { int result = cmd.ExecuteNonQuery(); return result; } } catch(SqlException ex) { throw ex; } } #endregion #region 带参数的增,删,改ExecuteNonQuery /// <summary> /// 带多个参数的增,删,改 /// </summary> /// <param name="sql"></param> /// <param name="type"></param> /// <param name="values"></param> /// <returns></returns> public static int ExecuteNonQuery(string sql,CommandType type,params SqlParameter[] values) { try { using(SqlCommand cmd=new SqlCommand(sql,Conn)) { cmd.CommandType = type; cmd.Parameters.AddRange(values);// int result = cmd.ExecuteNonQuery(); return result; } } catch(SqlException ex) { throw ex; } } #endregion #region 查询语句ExecuteScalar /// <summary> /// 查单个值 /// </summary> /// <param name="sql"></param> /// <returns></returns> public static int ExecuteScalar(string sql) { try { using(SqlCommand cmd=new SqlCommand(sql,Conn)) { int result = Convert.ToInt32(cmd.ExecuteScalar()); return result; } } catch(SqlException ex) { throw ex; } } #endregion #region 带参数的查询语句ExecuteScalar /// <summary> /// 带执行类型的ExecuteScalar /// </summary> /// <param name="sql"></param> /// <param name="type"></param> /// <param name="values"></param> /// <returns></returns> public static int ExecuteScalar(string sql,CommandType type,params SqlParameter[] values) { try { using(SqlCommand cmd=new SqlCommand(sql,Conn)) { cmd.CommandType = type; cmd.Parameters.AddRange(values); int result =Convert.ToInt32(cmd.ExecuteScalar()); return result; } } catch(SqlException ex) { throw ex; } } #endregion #region 查询,返回DataReader /// <summary> /// 查询表,获取多个记录 /// </summary> /// <param name="sql"></param> /// <returns></returns> public static SqlDataReader ExecuteReader(string sql) { try { using(SqlCommand cmd=new SqlCommand(sql,Conn)) { SqlDataReader dtr = cmd.ExecuteReader(); return dtr; } } catch(SqlException ex) { throw ex; } } #endregion #region 带参数的查询,返回DataReader /// <summary> /// 查询表,获取多个记录 /// </summary> /// <param name="sql"></param> /// <param name="type"></param> /// <param name="values"></param> /// <returns></returns> public static SqlDataReader ExecuteReader(string sql,CommandType type,params SqlParameter[] values) { try { using(SqlCommand cmd=new SqlCommand(sql,Conn)) { cmd.CommandType = type; cmd.Parameters.AddRange(values); SqlDataReader dtr = cmd.ExecuteReader(); return dtr; } } catch(SqlException ex) { throw ex; } } #endregion #region 查询,返回datatable /// <summary> /// 返回datatable /// </summary> /// <param name="sql"></param> /// <returns></returns> public static DataTable dataTable(string sql) { try { DataSet dst = new DataSet(); SqlCommand cmd = new SqlCommand(sql,Conn); SqlDataAdapter dad = new SqlDataAdapter(cmd); dad.Fill(dst);//在 DataSet 中添加或刷新行 return dst.Tables[0]; } catch(SqlException ex) { throw ex; } } #endregion #region 带参数的查询, 返回dataTable /// <summary> /// 返回dataTable /// </summary> /// <param name="sql"></param> /// <param name="values"></param> /// <returns></returns> public static DataTable datatable(string sql,params SqlParameter[] values) { DataSet dst = new DataSet(); SqlCommand cmd = new SqlCommand(sql,Conn); cmd.Parameters.AddRange(values); SqlDataAdapter dad = new SqlDataAdapter(cmd); dad.Fill(dst);//在 DataSet 中添加或刷新行 return dst.Tables[0]; } #endregion } }
欢迎转载或分享,如果文章对你有帮助,请给予推荐,欢迎交流及关注!!!