SqlHelper 工具类
SqlHelper 是一个自定义的工具类 将对数据库的操作封装起来 方便进行调用;
-
创建类库
- 右键解决方案-新建项目-选择 类库(.NET Framework) - 命名 Common
- 删除 初始化类,新建类 - 命名 SqlHelper
-
引用该类库
- 右键引用-添加引用-项目
-
获取数据库连接
-
string sqlcon = "Data Source=.;Initial Catalog=MyCar;User ID=sa;Password=1234";
-
-
查询封装
-
返回受影响行数封装(增删改)
-
SqlHelper类
-
public class SqlHelper { //获取数据库连接 static string sqlStr = ConfigurationManager.ConnectionStrings["conStr"].ConnectionString; /// <summary> /// 获取数据集 /// </summary> /// <param name="sql">要执行的Sql语句</param> /// <param name="param">Sql语句中的参数</param> /// <returns>结果集表</returns> public static DataTable ExecuteDataTable(string sql,params SqlParameter [] param) { DataTable table = new DataTable(); using (SqlConnection con =new SqlConnection(sqlStr)) { SqlDataAdapter adapter = new SqlDataAdapter(sql,con); // 不为空 就添加参数 if(param.Length != 0) { adapter.SelectCommand.Parameters.AddRange(param); } adapter.Fill(table); } return table; } /// <summary> /// 返回受影响行数 /// </summary> /// <param name="sql"></param> /// <param name="param"></param> /// <returns></returns> public static int ExecuteNonquery(string sql, params SqlParameter[] param) { int i = -1; using (SqlConnection con = new SqlConnection(sqlStr)) { con.Open(); SqlCommand com = new SqlCommand(sql,con); com.Parameters.AddRange(param); i = com.ExecuteNonQuery(); } return i; } /// <summary> /// 返回首行首列 /// </summary> /// <param name="sql">sql语句</param> /// <param name="param">sql中的参数</param> /// <returns></returns> public static object ExecuteScalar(string sql,params SqlParameter[] param) { using (SqlConnection con = new SqlConnection(sqlStr)) { con.Open(); SqlCommand com = new SqlCommand(sql,con); if(param.Length != 0) { com.Parameters.AddRange(param); } return com.ExecuteScalar(); } } /// <summary> /// 流方式返回数据 /// </summary> /// <param name="sql"></param> /// <param name="param"></param> /// <returns></returns> public static SqlDataReader ExecuteReader(string sql,params SqlParameter[] param) { SqlDataReader reader; SqlConnection con = new SqlConnection(sqlStr); using (SqlCommand com = new SqlCommand(sql, con)) { com.Parameters.AddRange(param); con.Open(); //CommandBehavior.CloseConnection //如果关闭SqlDataReader,SqlConnection也随之关闭 reader = com.ExecuteReader(CommandBehavior.CloseConnection); } return reader; } }
-
表现类
-
/// <summary> /// 通过id删用户 /// </summary> /// <param name="id"></param> /// <returns></returns> public int deleteUserById(int id) { string sql = "delete from Student where sid = @id"; SqlParameter p = new SqlParameter("@id",id); return SqlHelper.ExecuteNonquery(sql,p); } //初始化数据 public DataTable initDataTable() { label1.Text = "总人数:"+initDataTableCount(); string sql = " select * from Student"; return SqlHelper.ExecuteDataTable(sql); } //显示总人数 public string initDataTableCount() { string sql = "select COUNT(*) from Student"; return SqlHelper.ExecuteScalar(sql).ToString(); } //流方式显示结果集 private void button1_Click_1(object sender, EventArgs e) { string sql = "select * from Student"; SqlDataReader reader = SqlHelper.ExecuteReader(sql); while (reader.Read()) { Console.WriteLine(reader["sName"].ToString()); } reader.Close(); }
-
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!