封装一个SQLHelper类(项目通用SQLHelper类)

注:连接字符串以写入配置文件中,详情此处不再展开。参加之前博客。

 

using System.Configuration;
using System.Data.SqlClient;
using System.Data;namespace Course_Selecting.C_SCommon
{class SqlHelper{#region 获取连接字符串//从配置文件中读取连接字符串public static string GetConnevtionString(){return ConfigurationManager.ConnectionStrings["Sql"].ConnectionString;}#endregion#region 执行SQL返回受影响的行数//执行命令的方法:insert,update,delete  返回受影响的行数//params:可变参数,省略手动构造数组的过程,直接指定对象,编译器自动构造数组,并加入对象数组传递传递过来public static int ExecuteNonQuery(string sqlText, params SqlParameter[] parameters){using (SqlConnection conn = new SqlConnection(GetConnevtionString())){using (SqlCommand cmd = conn.CreateCommand()){conn.Open();cmd.CommandText = sqlText;//添加参数到命令中cmd.Parameters.AddRange(parameters);return cmd.ExecuteNonQuery();}}}#endregion#region 执行SQL返回第一行第一列的值//执行SQL返回 返回查询结果中的 第一行第一列的值public static object ExcuteScalar(string sqlText, params SqlParameter[] parameters){using (SqlConnection conn = new SqlConnection(GetConnevtionString())){using (SqlCommand cmd = conn.CreateCommand()){conn.Open();cmd.CommandText = sqlText;cmd.Parameters.AddRange(parameters);object result = cmd.ExecuteScalar();cmd.Parameters.Clear();return result;}}}#endregion#region 执行一个SQL 返回DataTabella//执行一个SQL 返回DataTabellapublic static DataTable ExcuteDataTbale(string sqlText, params SqlParameter[] parameters){using (SqlDataAdapter adapter = new SqlDataAdapter(sqlText, GetConnevtionString())){DataTable dt = new DataTable();adapter.SelectCommand.Parameters.AddRange(parameters);//参数添加到查询条件中adapter.Fill(dt);return dt;}}#endregion#region 执行一个SQL 返回SqlDataReaderpublic static SqlDataReader ExcuteReader(string sqlText, params SqlParameter[] parameters){//SqlDataReader要求读取数据是独占SqlConnection对象,且SqlConnection一直处于打开状态SqlConnection conn = new SqlConnection(GetConnevtionString());SqlCommand cmd = new SqlCommand(sqlText, conn);conn.Open();cmd.Parameters.AddRange(parameters);//CommandBehavior.CloseConnection表示当SqlDataReader释放时,同时释放SqlConnection对象return cmd.ExecuteReader(CommandBehavior.CloseConnection);}#endregion//**********SqlDataReader和SQLDataAdapter区别:*****************//SqlDataReader建立连接后,一直保持连接状态,数据仍然存在数据库中//SQLDataAdapter建立连接后,一次性把所有数据加载到内存中,然后关闭连接,不适合大量数据}
}

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部