浅谈牛腩

强大的SqlHelper
private SqlConnection conn = null;
private SqlCommand cmd = null;
private SqlDataReader sdr = null;
public SqlHelper()//构造函数
{
string connStr = ConfigurationManager.ConnectionStrings[“connStr”].ConnectionString;
//string connStr = “server=(local);database=newssystem;uid=sa;pwd=123456;”;
conn = new SqlConnection(connStr);
}
private SqlConnection GetConn()
{
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
return conn;
}
///
/// 有参数的增删改或存储过程
///
/// sql语句或存储过程
/// 参数
/// 命令参数
///
public int ExecuteNoQuery(string sql, SqlParameter[] paras, CommandType ct)
{
int res;
using (cmd = new SqlCommand(sql, GetConn()))
{
cmd.CommandType = ct;
cmd.Parameters.AddRange(paras);
res = cmd.ExecuteNonQuery();
}
return res;
}
///
/// 无参数的增删改
///
///
///
public int ExecuteNoQuery(string sql,CommandType ct)
{
int res;

        using (cmd = new SqlCommand(sql, GetConn()))
        {
            cmd.CommandType = ct;
            res = cmd.ExecuteNonQuery();
        }
        return res;

    }
   /// <summary>
   /// 执行无参查询或存储过程
   /// </summary>
   /// <param name="sql">sql查询语句或存储过程</param>
   /// <param name="ct">类型存储过程还是查询的sql语句</param>
   /// <returns>返回集合</returns>
    public DataTable ExecuteTable(string sql,CommandType ct)
    {
       DataTable dt=new DataTable ();
       cmd=new SqlCommand(sql,GetConn());
       cmd.CommandType = ct;
       using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
       {
           dt.Load(sdr);
       }
       return dt;
    }
    /// <summary>
    /// 执行带参数的SQL查询语句或存储过程
    /// </summary>
    /// <param name="sql">SQL查询语句或存储过程</param>
    /// <returns>参数集合</returns>
    public DataTable ExecuteTable(string sql,SqlParameter[] paras,CommandType ct)
    {
        DataTable dt = new DataTable();
        cmd = new SqlCommand(sql, GetConn());
        cmd.CommandType = ct;
        cmd.Parameters.AddRange(paras);
        using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))//当资源释放是同时关闭数据库
        {
            dt.Load(sdr);

        }
        return dt;
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章